是指创建一个对象并把这个对象赋给一个引用变量。强引用有引用变量指向时永远不会被垃圾回收,JVM 宁愿抛出 OutOfMemory 错误也不会回收这种对象。
public class Main {
public static void main(String[] args) {
new Main().fun1();
}
public void fun1() {
Object object = new Object();
Object[] objArr = new Object[1000];
}
当运行至 Object[] objArr = new Object[1000]; 这句时,如果内存不足,JVM会抛出 OOM 错误也不会回收 object 指向的对象。不过要注意的是,当 fun1 运行完之后,object 和 objArr 都已经不存在了,所以它们指向的对象都会被 JVM 回收。如果想中断强引用和某个对象之间的关联,可以显示地将引用赋值为 null,这样一来的话,JVM 在合适的时间就会回收该对象。

