被其它对象直接引用，并且不可访问，则会永久存活下来。一个应用程序如果持续地产生这种不可访问的对象群组，就会发生内存泄漏。在对象群组内部使用弱引用（即不会在引用计数中被计数的引用）有时能避免出现引用环，因此弱引用可用于解决循环引用的问题。如Apple的Cocoa框架就推荐使用这种方法，具体为，在父对子引用时使用强引用，子对父引用时使用弱引用，从而避免了循环引用。程序对一些对象只进行弱引用，通过此法可以指明哪些对象是不重要的，因此弱引用也用于尽量减少内存中不必要的对象存在的数量。
变