java的引用类型分四种:强引用-软引用-弱引用-虚引用
1、强引用:
java默认的引用就是强引用,尽管jvm内存不足,在gc的时候也不会进行回收,会抛出内存溢出的异常。
Person p = new Person();就是一个强引用
2、软引用:
软引用在jvm内存充足的时候,不会被回收,在不充足的时候会被回收,例子如下
WeakReference<Person> personSoftReference = new WeakReference<Person>(new Person());
3、弱引用:
弱引用在gc的时候会被回收。
4、虚引用
虚引用创建后就被回收,感觉没啥子用,回收的时候只会通知一下;