您的位置:首页 > 其它

私有化构造函数的作用

2015-11-29 17:52 225 查看
public class A{
private A() {  }

public static func_a(){}

}


这样的类,往往提供一些静态的函数来生成该类的实例,只要这个类有公开的属性、方法,得到实例引用的一方还是可以调用的,一个例子是singleton。

外面调用只能调用A的静态函数func_a(),而不能A a = new A();私有构造函数只能在函数内部调用,外部不能实例化,所以私有构造函数可以防止该类在外部被实例化。

public class Singleton {
private static Singleton s= null;

private Singleton() {

}

public static Singleton getInstance() {
if (s == null) {
synchronized (Singleton.class) {
if (s == null) {
s = new Singleton();
}
}
}
return s;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: