Java
外观
Java是一种广泛使用的高级编程语言,由Sun Microsystems(现为Oracle公司所有)于1995年发布。Java以"一次编写,到处运行"(Write Once, Run Anywhere, WORA)的理念著称,通过Java虚拟机(JVM)实现跨平台能力。
历史[编辑 | 编辑源代码]
Java最初由詹姆斯·高斯林(James Gosling)领导的团队开发,最初命名为"Oak",后改名为"Java"。主要版本历史包括:
- Java 1.0 (1996年)
- Java 2 (1998年)
- Java 5 (2004年) - 引入泛型、注解等重要特性
- Java 8 (2014年) - 引入Lambda表达式、Stream API
- Java 11 (2018年) - 首个长期支持(LTS)版本
- Java 17 (2021年) - 当前广泛使用的LTS版本
- Java 21 (2023年) - 最新LTS版本
语言特性[编辑 | 编辑源代码]
面向对象[编辑 | 编辑源代码]
Java是纯粹的面向对象编程语言,所有代码都必须包含在类中。基本概念包括:
平台独立性[编辑 | 编辑源代码]
Java通过字节码和Java虚拟机实现跨平台: 1. 源代码(.java)编译为字节码(.class) 2. JVM解释执行字节码 3. 不同平台有对应的JVM实现
自动内存管理[编辑 | 编辑源代码]
Java使用垃圾回收机制自动管理内存,开发者无需手动释放对象内存。
丰富的标准库[编辑 | 编辑源代码]
Java提供全面的Java类库,包括:
语法示例[编辑 | 编辑源代码]
Hello World[编辑 | 编辑源代码]
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
面向对象示例[编辑 | 编辑源代码]
// 定义一个类
class Animal {
String name;
public Animal(String name) {
this.name = name;
}
public void eat() {
System.out.println(name + " is eating.");
}
}
// 继承
class Dog extends Animal {
public Dog(String name) {
super(name);
}
// 方法重写
@Override
public void eat() {
System.out.println(name + " is eating dog food.");
}
// 特有方法
public void bark() {
System.out.println("Woof!");
}
}
public class Main {
public static void main(String[] args) {
Dog myDog = new Dog("Buddy");
myDog.eat(); // 输出: Buddy is eating dog food.
myDog.bark(); // 输出: Woof!
}
}
Java 8 Lambda表达式[编辑 | 编辑源代码]
import java.util.Arrays;
import java.util.List;
public class LambdaExample {
public static void main(String[] args) {
List<String> names = Arrays.asList("Alice", "Bob", "Charlie");
// 传统方式
for (String name : names) {
System.out.println(name);
}
// 使用Lambda表达式
names.forEach(name -> System.out.println(name));
// 方法引用
names.forEach(System.out::println);
}
}
开发工具[编辑 | 编辑源代码]
- JDK (Java Development Kit) - Java开发工具包
- JRE (Java Runtime Environment) - Java运行环境
- Eclipse - 流行的Java IDE
- IntelliJ IDEA - 强大的商业IDE
- NetBeans - 开源IDE
- Maven - 项目构建工具
- Gradle - 现代构建工具
应用领域[编辑 | 编辑源代码]
Java被广泛应用于多个领域:
- 企业级应用 (使用Spring框架、Jakarta EE)
- Android开发 (基于Java语法)
- 大数据 (Hadoop、Spark)
- Web开发 (Servlet、JSP)
- 科学计算
- 嵌入式系统
性能考量[编辑 | 编辑源代码]
虽然Java因即时编译(JIT)技术性能接近原生代码,但仍需注意:
社区与生态[编辑 | 编辑源代码]
Java拥有庞大的开发者社区和丰富的生态系统: