黑马程序员技术交流社区
标题:
很奇怪!求解释
[打印本页]
作者:
明锦添
时间:
2013-3-19 15:26
标题:
很奇怪!求解释
本帖最后由 明锦添 于 2013-3-19 21:31 编辑
饿汉式
class Single_1
{
private static Single_1 s=new Single_1();
private Single_1(){}
public static Single_1 getInstance()
{
return s;
}
}
懒汉式
class Single_2
{
private static Single_2 s=null;
private Single_2(){}
public static Single_2 getInstance()
{
if(s==null)
{
synchronized(Single_2.class)
{
if(s==null)
s=new Single_2();
}
}
return s;
}这两个单例模式为什么在eclipse中会报错,报错的地方是定义为类变量的s和getInstance()函数名
作者:
宋耀冬
时间:
2013-3-19 16:31
s 是new出来的对象 你的return s 可能有问题
作者:
沉默de羔羊
时间:
2013-3-19 17:25
本帖最后由 沉默de羔羊 于 2013-3-19 17:26 编辑
宋耀冬 发表于 2013-3-19 16:31
s 是new出来的对象 你的return s 可能有问题
public class Single_1 {
private static Single_1 s = new Single_1();
private Single_1() {
}
public static Single_1 getInstance() {
return s;
}
public static void main(String args[]){
System.out.println(Single_1.getInstance());
}
}
class Single_2{
private static Single_2 s=null;
private Single_2(){}
public static Single_2 getInstance(){
if(s==null){
synchronized(Single_2.class){
if(s==null)
s=new Single_2();
}
}
return s;
}
}---这里你没有加结束括号!
少一个}的问题,添加一个就好了!要细心呃!
复制代码
作者:
安鹏宇
时间:
2013-3-19 17:57
额。。看了半天没问题,你后边括号少了一个,这是细节问题{:soso_e127:}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2