A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© deng2242 中级黑马   /  2015-8-15 23:19  /  447 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

如:
1.        class Single{
2.               //类已加载,对象就已经存在了
3.               private static Single s = new Single();
4.       
5.               private Single(){}
6.       
7.               public static Single getInstance(){
8.                     return s ;
9.              }
10.        }
那么如何让这个对象在内存中消失?

3 个回复

倒序浏览


1.        class Single{
2.            
3.               private static Single s =null;
4.        
5.               private Single(){}
6.        
7.               public static Single getInstance(){
8.                    if (s==null)
                           return  new Single();
9.              }
10.        }
回复 使用道具 举报
自动回收吧  当没有变量再引用这个对象时,jvm会自动销毁对象
回复 使用道具 举报
wang949055945 发表于 2015-8-16 01:50
1.        class Single{
2.            
3.               private static Single s =null;

这不能这么省略吧  你又没把new single()赋值给S  下次判定S还是等于null  而且假设S不等于空  这个方法不是没有返回语句了么
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马