第一章:Java简介
1.3 Java语言的特点
Java作为一种广泛使用的编程语言,具有以下核心特点:
1. 简单性与易学性
- 语法简洁:Java的语法基于C/C++,但去除了复杂的指针和多重继承等特性。
- 自动内存管理:通过垃圾回收机制(GC)自动释放无用内存,减少开发者负担。
2. 面向对象(OOP)
- 纯面向对象:所有代码必须包含在类中(除基本数据类型外)。
- 四大特性:封装、继承、多态和抽象,支持模块化和代码复用。
3. 平台无关性(跨平台)
- "Write Once, Run Anywhere":通过JVM(Java虚拟机)实现字节码的跨平台执行。
- 字节码机制:Java源代码编译为
.class文件,由不同平台的JVM解释执行。
4. 安全性
- 沙箱机制:限制未授权代码访问系统资源。
- 无显式指针:避免内存非法访问。
- 字节码验证:确保代码符合JVM规范。
5. 高性能
- 即时编译(JIT):将热点代码编译为本地机器码,提升运行速度。
- 多线程支持:内置线程库,支持并发编程。
6. 健壮性与可靠性
- 强类型检查:编译时严格检查数据类型。
- 异常处理机制:通过
try-catch-finally处理运行时错误。
7. 分布式支持
- 网络库丰富:内置
java.net包支持Socket、HTTP等协议。 - RMI(远程方法调用):实现跨JVM的对象调用。
8. 动态性
- 反射机制:运行时动态加载类或调用方法。
- 支持动态扩展:通过类加载器实现模块化扩展。
9. 多线程
- 内置线程模型:提供
Thread类和Runnable接口。 - 同步工具:支持
synchronized关键字和并发工具包(java.util.concurrent)。
10. 丰富的标准库
- Java API:涵盖集合、IO、网络、数据库连接(JDBC)等常用功能。
示例代码:体现Java特点的HelloWorld
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, Java!"); // 简单性、平台无关性
}
}
对比其他语言
| 特性 | Java | C++ | Python |
|---|---|---|---|
| 内存管理 | 自动GC | 手动 | 自动GC |
| 执行方式 | 字节码+JVM | 直接编译 | 解释执行 |
| 多线程支持 | 原生支持 | 依赖库 | 全局锁限制 |
