您的位置:首页 > 编程语言 > Java开发

java——Java构造方法的私有化

2016-03-06 23:13 513 查看
原文链接:http://blog.chinaunix.net/uid-21660668-id-431183.html

使用private关键字可以声明属性,声明的属性不能被外部直接访问。同样,可以使用private声明方法,声明的方法只能在类的内部看见。

·构造方法也可以使用private声明,一旦声明,则外部就不能对对象进行实例化操作了。

范例1:

class Single{

private Single() ; //将构造方法私有化

public void print(){

System.put.println("Hello world!!");

}

}

public class SingleDemo01{

public static void main(String args[]){

Single s = null ; //声明对象

s = new Single ; //实例化对象

s.print();

}

}

运行结果:

不能编译,因为Single()是私有化的构造方法,在“s = new Single()”中则不可以执行。

修改范例2:

class Single{

private static Single instance = new Single();

// 在类中对构造方法进行实例化

private Single() ; //将构造方法私有化

public static Single getInstance(){

return instance ;

}

//对insance 对象进行get方法取得

public void print(){

System.put.println("Hello world!!");

}

}

public class SingleDemo02{

public static void main(String args[]){

Single s = null ; //声明对象

s = Single.getInstance();

//通过类中的get方法对对象instance简介进行实例化

s.print();

}

}

执行结果:Hello world!!

总结:

在类中如果声明了私有化的构造方法,那么主方法中若取得并且实例化对象可以用以下方法:

·在类中进行对私有化的构造方法的实例化。

·用static的get方法对实例化的对象进行取值。

·在主方法中取得实例化对象用get方法。

此程序的意义:

如果现在一个类只能有一个实例化对象的话,那么这样的设计就称为--单例设计。

当整个系统中只需要一个实例化的对象时,就是用此设计模式。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: