当前位置: 技术问答>java相关
How to use Private constructors?
来源: 互联网 发布时间:2015-09-12
本文导语: 我一直都把constructor设为public的, Class Aaa{ public Aaa(){} } Aaa a=new Aaa(); 如果设成private的,怎么用呢? Class Aaa{ private Aaa(){} } Aaa a=new Aaa; //??? | 呵呵,设成private的就不能用new 来生成实例...
我一直都把constructor设为public的,
Class Aaa{
public Aaa(){}
}
Aaa a=new Aaa();
如果设成private的,怎么用呢?
Class Aaa{
private Aaa(){}
}
Aaa a=new Aaa; //???
Class Aaa{
public Aaa(){}
}
Aaa a=new Aaa();
如果设成private的,怎么用呢?
Class Aaa{
private Aaa(){}
}
Aaa a=new Aaa; //???
|
呵呵,设成private的就不能用new 来生成实例了,要自己写一个public的方法来生成实例.在设计模式中singleton模式就有一种方法是采用这种方式来确保只生成这个类的一个实例.
|
当private用来限制类时,包外是不可能调用的,只能在包内调用。
目的:该类要处理一些比较敏感的数据,或者只是在某个包内要用。
目的:该类要处理一些比较敏感的数据,或者只是在某个包内要用。
|
You can call the private constructor by a non-private constructor, so in this condition, the private constructor maybe a full-parameterized service constructor, that means you can not directly use this constuctor to get an instance, but you can use it to assisit other constructors. This can prevent your client-programmer from using the crucial private constructor directly.
This technique is very common and easy, but not used very much in practice.
This technique is very common and easy, but not used very much in practice.
|
设成private以后也能用,和普通的private方法一样只能在其内部访问。
不知道将constuctor设为private有多大的实际意义?
另外,应该是Aaa a=new Aaa(); 呵呵
不知道将constuctor设为private有多大的实际意义?
另外,应该是Aaa a=new Aaa(); 呵呵
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。