返回

Java 中的类 - 揭秘其概念、生命周期和加载触发因素

Android

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 编程语言的基本构建块。类定义了对象的蓝图和行为。类的生命周期从加载到卸载分为七个阶段。类的加载由类加载器完成,类加载器根据一定的触发条件来加载类。