第二章:Java介绍(开篇推荐)

简介: 第二章:Java介绍(开篇推荐)




👋第二章:Java介绍(开篇推荐)

⚽️1. Java是什么?

官方是这样解释的:“Java既是一种编程语言又是一个平台。

⚾️1.1 Java编程语言

Java编程语言是一种高级语言,具有以下所有流行语的特征:

  • 简单、面向对象
  • 稳健且安全
  • 架构中立和便携
  • 高性能、分布式
  • 解释的、多线程和动态的

在Java编程语言中,所有的源代码首先用.java后缀的纯文本文件编写。然后这些源文件被javac编译器编译为.class文件。.class文件不包含本机处理器的代码;相反,它仅包含字节码——字节码是Java虚拟机的机器语言。Java启动器工具使用Java虚拟机的一个实例运行应用程序。

因为Java虚拟机可以在许多不同的操作系统上使用,所以相同的.class文件能够在Microsoft Windows、Solaris操作系统(Solaris OS)、Linux或Mac OS上运行。有些虚拟机,比如Java SE HotSpot at a Glance,会在运行时执行额外的步骤,以提高应用程序的性能。这包括各种任务,如查找性能瓶颈和重新编译(到本机代码)经常使用的代码部分。

⚾️1.2 Java平台

平台是程序运行的硬件或软件环境。前面已经提到了一些最流行的平台,如微软Windows、Linux、Solaris OS和Mac OS。大多数平台可以被描述为操作系统和底层硬件的组合。Java平台与大多数其他平台的不同之处在于,它是一个只运行在其他基于硬件的平台之上的软件平台。

Java平台有两个组件:

  • Java虚拟机
  • Java应用程序编程接口(API)

Java虚拟机:它是Java平台的基础,可以移植到各种基于硬件的平台上。

Java应用程序编程接口:它是一个大型的现成软件组件集合,提供了许多有用的功能。它被分组为相关类和接口的库,这些库被称为包。

⚽️2. Java能做什么?

通用的高级 Java 编程语言是一个功能强大的软件平台。Java 平台的每个完整实现都为你提供以下功能:

  • 开发工具:开发工具提供了编译、运行、监控、调试和记录应用程序所需的一切。作为新开发人员,将使用的主要工具是javac编译器、java启动器和javadoc文档工具。
  • 应用程序编程接口 (API):API 提供 Java 编程语言的核心功能。它提供了大量有用的类,可以在你自己的应用程序中使用。它涵盖了从基本对象到网络和安全,再到 XML 生成和数据库访问等方方面面。
  • 集成库:Java IDL API、JDBC API、Java Naming and Directory Interface (JNDI) API、Java RMI 和 Java Remote Method Invocation over Internet ORB 间协议技术(Java RMI-IIOP 技术)等集成库支持数据库访问和操纵远程对象。
  • 企业管理后台:基于J2EE的企业框架有很多,包括Java官方的Servlet和JSP,以及第三方流行框架Spring Framework、Spring Boog、Spring Cloud。
  • Android App:Java ME 为在移动设备和嵌入式设备上运行应用程序提供了一个健壮且灵活的环境。
  • GUI应用程序:JavaFX、Swing 和 Java 2D 工具包使创建复杂的图形用户界面 (GUI) 成为可能。
  • 大数据:Java语言在大数据方面也有很多建树,比如非常流行的大数据开源库: Hadoop、Map-Reduce、Flink等。
  • 物联网:Java被设计之初,就是为PDA设备编写应用程序,在随后的十多年里,被证明非常适合于创建许多移动设备上运行的应用程序,Java和IOT就像是一对孪生兄弟,相辅相成。

⚽️3. Java将如何改变我的生活?

  • 快速上手:虽然Java编程语言是一种功能强大的面向对象语言,但它简单易学,特别是对于已经熟悉C或C++的程序员来说。
  • 编写更少的代码:程序指标(类计数、方法计数等)的比较表明,用 Java 编程语言编写的程序比用 C++ 编写的相同程序小四倍。
  • 编写更好的代码:Java 编程语言鼓励良好的编码习惯,自动垃圾收集可避免内存泄漏。它的面向对象、JavaBeans组件体系结构以及范围广泛、易于扩展的 API 可以重用现有的、经过测试的代码并减少引入的错误。
  • 更快地开发程序:Java 编程语言比 C++ 更简单,因此,用它编写代码时,开发时间最多可以缩短一倍。程序也将需要更少的代码行。
  • 避免平台依赖性:可以通过避免使用以其他语言编写的库来保持程序的可移植性。
  • 编写一次,随处运行:因为用 Java 编程语言编写的应用程序被编译成与机器无关的字节码,所以它们可以在任何 Java 平台上一致地运行。

👬 交友小贴士:

博主GithubGitee同名账号,Follow 一下就可以一起愉快的玩耍了,更多精彩文章请持续关注。



目录
相关文章
|
Arthas 监控 Java
开源Java诊断工具Arthas:开篇之watch实战
还在为排查Java程序线上问题头痛吗,看我们用阿里开源的诊断神器 Arthas 来帮您
506 1
|
5月前
|
设计模式 Java
【Java设计模式 - 专栏开篇简介】 java设计模式开篇
【Java设计模式 - 专栏开篇简介】 java设计模式开篇
37 0
|
设计模式 前端开发 JavaScript
零基础学Java(一、开篇)
零基础学Java(一、开篇)
82 0
|
存储 Java 数据库
Java集合源码分析之开篇
初衷 Java集合是我们使用最频繁的工具,也是面试的热点,但我们对它的理解仅限于使用上,而且大多数情况没有考虑过其使用规范。本系列文章将跟随源码的思路,分析实现的每个细节,以期在使用时避免各种不规范的坑。在这里,我们会惊艳于开发者优秀的设计,也会感激先辈们付出的艰辛努力,更重要的是知其所以然,少犯错误,写出优秀的代码。 许多人对集合类的理解是暴力的,当需要保存对象时就使用ArrayList,当需要保存键值对时就使用HashMap,当需要不可重复时就使用HashSet,等等。而且使用方式也比较单一:
207 0
|
Web App开发 消息中间件 Java
轻松搞定RabbitMQ开篇:Java消息队列与JMS的诞生
Java 帝国之消息队列 原创: 刘欣 码农翻身 2017-02-06 张家村的历史 Java 帝国的张家村正在迎来一次重大的变革。
|
缓存 网络协议 Java
Java网络编程和NIO详解开篇:Java网络编程基础
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/a724888/article/details/75048252 欢迎阅读完整的专栏博文:Java网络编程与NIO 本文首发于我的个人公众号:程序员江湖 努力成为最有影响力的程序员自媒体,专注于面试,职场,个人提升三大主题。
|
7天前
|
监控 安全 Java
在 Java 中使用线程池监控以及动态调整线程池时需要注意什么?
【10月更文挑战第22天】在进行线程池的监控和动态调整时,要综合考虑多方面的因素,谨慎操作,以确保线程池能够高效、稳定地运行,满足业务的需求。
77 38
|
4天前
|
安全 Java
java 中 i++ 到底是否线程安全?
本文通过实例探讨了 `i++` 在多线程环境下的线程安全性问题。首先,使用 100 个线程分别执行 10000 次 `i++` 操作,发现最终结果小于预期的 1000000,证明 `i++` 是线程不安全的。接着,介绍了两种解决方法:使用 `synchronized` 关键字加锁和使用 `AtomicInteger` 类。其中,`AtomicInteger` 通过 `CAS` 操作实现了高效的线程安全。最后,通过分析字节码和源码,解释了 `i++` 为何线程不安全以及 `AtomicInteger` 如何保证线程安全。
java 中 i++ 到底是否线程安全?