文章目录
- Java 简介
- 一、Java 核心三大特性(核心设计基石)
- 二、Java 技术体系(三大核心平台,覆盖全开发场景)
- 三、Java 典型应用领域
- 四、Java 语言的核心优势
- 五、Java 版本迭代与现状
- 六、Java 开发的核心环境
- Java 入门
- JDK、JRE、JVM
- Java程序运行机制
- IDE
- ## 第一个Java程序
- Java 基础
- 注释
- 标识符
- 关键字
- 数据类型
- 数据转换
- 变量
- 常量
- 运算符
- 包机制
- JavaDoc
Java 简介
Java 是由Sun Microsystems(后被 Oracle 收购)于 1995 年推出的面向对象、跨平台高级编程语言,由詹姆斯・高斯林(James Gosling)及其团队研发,核心设计理念围绕 “简单、安全、跨平台、高性能” 展开,目前已成为全球最主流的编程语言之一,广泛应用于企业级开发、移动开发、大数据等多个领域。
一、Java 核心三大特性(核心设计基石)
Java 的跨平台能力和核心优势,核心依托于三大核心特性,也是其区别于其他语言的关键:
- 一次编写,到处运行(Write Once, Run Anywhere - WORA)
这是 Java 最标志性的特性,实现原理是Java 程序并非直接编译为操作系统的机器码,而是先由 javac 编译器编译为与平台无关的字节码(Bytecode)(文件后缀 .class),再由不同操作系统上对应的Java 虚拟机(JVM, Java Virtual Machine)解释 / 编译执行字节码。
开发者只需编写一套代码,无需针对 Windows、Linux、macOS 等不同系统做修改;
不同系统只需安装对应的JVM(虚拟机),即可运行相同的字节码文件,真正实现跨平台。 - 面向对象(Object-Oriented, OOP)
Java 是纯面向对象的编程语言(除基本数据类型外,一切皆对象),完全遵循面向对象的四大核心原则:封装、继承、多态、抽象,通过类(Class)和对象(Object)组织代码,大幅提升代码的可复用性、可维护性和扩展性,适合开发大型、复杂的软件系统。 - 自动内存管理(垃圾回收 - Garbage Collection, GC)
Java 摒弃了 C/C++ 中手动管理内存的方式(手动malloc分配 /free释放),由 JVM 的垃圾回收器 自动监控并回收程序中不再使用的内存空间(无引用的对象),从根源上减少了内存泄漏和空指针异常等常见内存问题,降低了开发门槛和程序出错概率。注:开发者可通过 JVM 参数调优垃圾回收策略,平衡内存使用和程序性能。
二、Java 技术体系(三大核心平台,覆盖全开发场景)
Java 并非单一语言,而是一套完整的技术体系,根据应用场景分为三大核心平台,适配从嵌入式到大型分布式系统的所有开发需求:
- Java SE(Java Standard Edition - 标准版)
核心基础
Java 技术的基础核心,包含 Java 核心语法、基础类库(集合、IO、多线程、网络编程等)、JVM、编译器等核心组件,是其他两个平台的基础。主要用于开发桌面应用(如 Swing/JavaFX 程序)、控制台程序,以及为 Java EE/Java ME 提供底层支持。 - Java EE(Java Platform, Enterprise Edition - 企业版)
基于 Java SE 扩展的企业级开发平台,提供了一系列针对企业级应用的标准和技术规范(如 Servlet、JSP、EJB、Spring、MyBatis 等),专门用于开发分布式、高可用、高并发的企业级应用,如电商平台、金融系统、后台管理系统、大型网站后端等,是 Java 在企业开发领域的核心应用方向。 - Java ME(Java Micro Edition - 微型版)
基本不用
基于 Java SE 精简的嵌入式 / 移动开发平台,针对资源受限的设备(如嵌入式设备、智能家电、早期功能手机)设计,核心是轻量级的类库和 JVM。随着 Android 的兴起,其移动开发场景逐渐被替代,但仍在嵌入式领域有一定应用。
三、Java 典型应用领域
依托跨平台、稳定、安全、高性能的特性,Java 的应用覆盖几乎所有软件开发领域,是工业级开发的 “主力军”,主要应用场景包括:
企业级后端开发:最核心的应用领域,基于 Spring Boot、Spring Cloud 等框架开发分布式微服务系统,支撑电商、金融、政务、物流等行业的核心业务;
Android 应用开发:Android 系统的底层开发语言为 Java(目前 Kotlin 为官方推荐,但仍兼容 Java),几乎所有 Android App 的核心逻辑都可通过 Java 实现;
大数据开发:大数据生态的核心框架(Hadoop、Spark、Flink、HBase 等)均由 Java 编写,大数据开发中的核心业务逻辑开发、框架二次开发也主要使用 Java;
桌面应用开发:通过 Swing、JavaFX 等技术开发跨平台的桌面客户端(如办公软件、开发工具、工业控制软件);
嵌入式开发:基于 Java ME 开发智能家电、物联网设备、工业嵌入式系统;
云原生开发:结合 Docker、K8s、Spring Cloud Alibaba 等技术,开发云原生微服务、容器化应用。
四、Java 语言的核心优势
跨平台性:依托 JVM 和字节码,实现 “一次编写,到处运行”,大幅降低多平台开发的成本;
面向对象:纯面向对象设计,代码结构清晰,可复用性和可维护性强,适合大型项目开发;
内存安全:自动垃圾回收机制,避免手动内存管理的错误,同时提供数组边界检查、空指针防护等机制,提升程序稳定性;
安全性高:内置安全管理器(Security Manager),可限制程序的资源访问(如文件、网络),同时字节码验证机制可防止恶意代码执行,适合开发金融、政务等对安全要求高的系统;
生态完善:拥有全球最丰富的开源生态,海量的第三方框架(Spring、MyBatis、Netty 等)、类库和工具,大幅提升开发效率,解决几乎所有开发场景的问题;
稳定性和高性能:经过二十多年的迭代优化,Java 虚拟机的即时编译(JIT)技术大幅提升了程序运行效率,同时语言本身的设计保证了程序的稳定性,可支撑 7×24 小时不间断运行的企业级系统;
跨领域兼容:可与 C/C++、Python、Go 等语言无缝集成,同时支持多种数据库(MySQL、Oracle、Redis 等),适配不同的技术栈;
社区和人才丰富:全球拥有庞大的开发者社区,遇到问题可快速找到解决方案;同时 Java 开发者基数大,企业易招聘到相关人才。
五、Java 版本迭代与现状
Java 自 1995 年发布以来,持续迭代优化,核心版本节点包括:
JDK 1.0(1996):首个正式版本,奠定核心语法和 JVM 基础;
JDK 5(2004):里程碑版本,引入泛型、注解、自动装箱、foreach 循环等核心特性,大幅提升开发效率;
JDK 8(2014):目前使用最广泛的 LTS(长期支持)版本,引入 Lambda 表达式、Stream API、函数式接口等,支持函数式编程,是企业开发的主流版本;
JDK 11(2018):新一代 LTS 版本,移除永久代、引入模块化(Module)、支持 HTTP/2,适合云原生开发;
JDK 17(2021):最新的主流 LTS 版本,优化模块化、增强安全性、提升性能,是目前推荐的新一代生产环境版本。
目前企业开发中,JDK 8 仍占主导地位(生态兼容最完善),JDK 11 和 JDK 17 的使用率正在快速提升,Oracle 对 LTS 版本提供长期的安全更新和技术支持,保障企业系统的稳定性。
六、Java 开发的核心环境
Java 开发的基础环境为 JDK(Java Development Kit - Java 开发工具包),它包含了开发 Java 程序所需的所有组件:
JRE(Java Runtime Environment - Java 运行时环境):包含 JVM、核心类库,是运行 Java 程序的基础(仅运行程序可只安装 JRE);
编译器(javac):将 Java 源代码(.java)编译为字节码(.class);
解释器(java):启动 JVM 并执行字节码文件;
其他工具(javadoc、jdb、javap 等):用于生成文档、调试程序、反编译字节码等。
开发者只需在电脑上安装对应系统的 JDK,配置环境变量后,即可通过命令行或 IDE(如 IntelliJ IDEA、Eclipse)进行 Java 开发。
Java 入门
JDK、JRE、JVM
JDK ⊃ JRE ⊃ JVM
- JVM(Java Virtual Machine):最底层的执行引擎,负责加载并执行 .class 字节码文件,是实现 “一次编写,到处运行” 的核心。
作用:屏蔽了不同操作系统的底层差异,让字节码可以在任何安装了 JVM 的系统上运行,是跨平台能力的核心。 - JRE(Java Runtime Environment):包含 JVM 和 Java 核心类库(如集合、IO、网络等),是运行 Java 程序的必要环境。
作用:提供了运行 Java 程序所需的基础环境,普通用户只需安装 JRE 就能运行已编译的 Java 程序。 - JDK(Java Development Kit):在 JRE 基础上增加了开发工具(如编译器 javac、打包工具 jar、文档生成工具 javadoc 等),是开发 Java 程序的完整工具包。
作用:面向开发者,包含了开发、编译、调试 Java 程序的所有工具,开发者必须安装 JDK 才能进行编码工作。
Java程序运行机制
Java 程序先经编译器 javac 把.java源文件编译成字节码.class文件。字节码由 JVM 加载,JVM 里类加载子系统负责找到并加载字节码,然后字节码被送到执行引擎,执行引擎可以采用解释执行(逐行解释执行字节码)或 JIT 即时编译(将频繁执行代码编译为机器码)方式运行,运行时数据区还会分配内存来存储程序运行的各种数据,像堆存对象、栈管方法调用等。
IDE
IDE 是集成开发环境(Integrated Development Environment)的简称,它把源代码编辑器、构建自动化工具、调试器等软件开发工具集成在一起,有些还包含编译器、解释器。能提高开发效率,常见的有用于 Java 开发的 Eclipse、IntelliJ IDEA 等。
## 第一个Java程序
publicclassHelloJava{publicstaticvoidmain(String[]args){System.out.print("Hello,World!");}}public:访问修饰符,表示公共的,可被其他类访问。
class:定义类的关键字,一个 Java 程序基本单元。
HelloJava:类名,需与文件名一致(首字母大写规范)。
static:静态的,修饰方法表示可直接用类名调用。
void:表示方法无返回值。
main:主方法名,程序执行入口。
String[]:字符串数组类型。
args:数组名,可接收命令行参数 。
System:系统类,提供一些系统相关功能。
out:System类的标准输出对象。
print:输出方法,输出内容不换行。