返回
Java 中的类 - 揭秘其概念、生命周期和加载触发因素
Android
2023-10-04 18:38:39
Java 中的类
类是 Java 编程语言的基本构建块,它定义了对象的蓝图和行为。类由一组属性(称为字段)和方法组成,这些属性和方法共同定义了对象的状态和行为。类还包含有关类本身的元数据,例如其名称、父类和接口。
创建类
要创建类,您需要使用 class
,后面跟类名和类体。类体包含类的属性和方法。例如,以下代码创建一个名为 Person
的类,该类具有一个名为 name
的属性和一个名为 greet
的方法:
public class Person {
private String name;
public Person(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void greet() {
System.out.println("Hello, my name is " + name);
}
}
实例化类
要实例化类,您需要使用 new
关键字,后面跟类名和构造函数参数。例如,以下代码创建一个 Person
类的新实例,并将其存储在名为 person
的变量中:
Person person = new Person("John Doe");
现在,您可以使用 person
变量来访问类的属性和方法。例如,以下代码获取 person
的姓名并将其打印到控制台:
System.out.println(person.getName());
类的生命周期
类的生命周期是指类从加载到卸载的整个过程。类的生命周期可以分为以下几个阶段:
- 加载 :类的字节码文件被加载到内存中。
- 验证 :验证类的字节码是否符合 Java 虚拟机的规范。
- 准备 :为类的静态字段分配内存并设置其默认值。
- 解析 :将类的符号引用(例如类名和方法名)替换为直接引用(例如内存地址)。
- 初始化 :执行类的静态初始化程序和实例初始化程序。
- 使用 :类的实例被创建并使用。
- 卸载 :类的字节码文件从内存中卸载。
加载类的触发因素
类的加载是由类加载器完成的。类加载器会根据一定的触发条件来加载类。这些触发条件包括:
- 显式加载 :当您使用
Class.forName()
方法或newInstance()
方法显式加载类时。 - 隐式加载 :当您使用类的实例时。
- 子类加载 :当您加载一个子类时,其父类也会被加载。
- 接口实现 :当您加载一个接口的实现类时,该接口也会被加载。
- 反射 :当您使用反射 API 来获取类的信息时。
总结
类是 Java 编程语言的基本构建块。类定义了对象的蓝图和行为。类的生命周期从加载到卸载分为七个阶段。类的加载由类加载器完成,类加载器根据一定的触发条件来加载类。