java 对象生命周期包括:创建对象、初始化、可达性、失效、回收。创建对象通过 new 关键字,初始化在构造方法中进行,可达性指通过引用变量访问,失效指不再可达,回收指垃圾回收器释放失效对象内存。

Java 对象的生命周期
Java 对象在生命周期中经历以下几个阶段:
1. 创建
立即学习“Java免费学习笔记(深入)”;
- 对象首先通过
new关键字创建。 - 当
new关键字执行时,JVM 会分配内存并调用对象的构造方法。
2. 初始化
iOS多线程编程对于iOS开发初学者来说,总是会觉得很难理解和掌握,现在通过几个实例来更加系统全面的理解iOS多线程编程,希望对大家有所帮助。 有些程序是一条直线,起点到终点;有些程序是一个圆,不断循环,直到将它切断。直线的如简单的Hello World,运行打印完,它的生命周期便结束了,像昙花一现那样;圆如操作系统,一直运行直到你关机。 一个运行着的程序就是一个进程或者叫做一个任务,一个进程至少包含一个线程,线程就是程序的执行流。Mac和iOS中的程序启动,创建好一个进程的同时,一个线程便开始运行,
- 构造方法执行时,对象会进行初始化。
- 这是设置对象初试值的阶段。
3. 可达性
- 当对象创建后,它便是可达的。
- 可达性意味着对象可以通过引用变量访问。
4. 失效
- 当对象不再可达时,它将被视为失效。
- 无效对象由垃圾回收器 (GC) 管理。
5. 回收
- 垃圾回收器会回收失效对象的内存。
- 这有助于防止内存泄漏,并释放资源以供新对象使用。
实战案例:
public class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
// ...
}
public class Main {
public static void main(String[] args) {
// 创建一个 Person 对象
Person person = new Person("John", 30);
// 对象可达并且可以访问
System.out.println(person.name); // 打印 "John"
// 将 person 引用赋值给 null,对象失活
person = null;
// 垃圾回收器将回收 person 对象使用的内存
}
}在这个案例中,当 person 引用被赋值为 null 时,Person 对象将变得失效。随后,垃圾回收器将回收该对象的内存。










