JDK2的时候,对象的引用只有两种情况
后来有了更多场景的需要,
在这种需求提出后 JDK2之后,Java 补充了对象引用的概念,将引用分为强、软、弱、虚四种。
了解对象引用概念之前先喝杯咖啡提提神。
4个不同性格的人喝咖啡
从前有甲乙丙丁四个人去咖啡厅喝咖啡,这四兄弟吧,不知道咖啡厅的规矩,跟我似的,也没去过啊,不知道。进去了之后这 甲乙丙丁 四兄弟就找个位置拿着咖啡在那喝。
结果不巧今天咖啡厅爆满!服务员就想着找一些喝完不走的人聊聊,把它们聊走,
也不知怎么的,就盯上这四兄弟了,就过来问 甲 :“甲先生,你喝完了吗?今天人有点多,你看看…”,“管谁叫先生呢,我是你大姐!没喝完呢,你看不见呐,不走”。甲 很 强 势,服务员不敢惹。
接着他就朝着 乙 走过来,他还没说话,乙 先开口:“刚你跟我大姐说的我听见了,你看这么的行不行,你先去找别人,如果你找完别人之后位置还不够,来找老妹儿,老妹儿给你让这个位置 ” ,服务员一看 乙 是个 软 妹子,就答应她走开了。
这会儿服务员大哥已经有点累了,想赶快找到新位置出来,不然一会内存溢出了擦,来到 丁 面前,“兄弟,今天餐厅位置不够了,你看你让一下子行不行”,说着用手拍着 丁 的肩膀,丁 一看这架势,有点害怕,赶紧说:“行行行”,服务员一看,这 丁 也太 弱 了。
服务员大哥准备乘胜追击来到 丙 面前,发现这个 丙 有点问题,怎么说呢,就像 幽灵 一样若隐若现,完事服务员过去拍了一下他,这不拍不知道,一拍差点裤衩子都吓掉了,这压根就没人,甚至那杯咖啡他都拿不起来,服务员只好瑟瑟发抖的说“这地方我先收拾了啊” 然后就灰溜溜的跑开了,不一会这个位置就给其他客人坐上了。
大哥找了一会安排了一些人坐下,发现位置还是不够,于是他想起 乙 说的话,就过去给 乙 说了现在的情况,然后 乙 也是个守信用的 软 妹子,就收拾东西走开了。
不过当 乙 走开之后,服务员发现还有 1 个顾客没有位置坐!实在没办法了,谁也别喝了,关门吧,人都从咖啡厅里溢出去了。
所以这个故事告诉了我们什么?
咖啡厅里有鬼
总结一下,甲乙丙丁分别对应的 强软弱虚 四种引用类型
这4种引用强度依次逐渐减弱。强 > 软 > 弱 > 虚
(正文完)
感谢阅读,一键三连支持作者,更欢迎关注我一起学习更多 Java 内容