甲构造用于创建时初始化对象。从语法上讲,它类似于一种方法。区别在于,构造函数的名称与其类相同,并且没有返回类型。
无需显式调用构造函数,这些构造函数会在实例化时自动调用。
构造函数允许的访问说明符/修饰符
构造函数允许使用public,protected和private修饰符。
创建单例类时,我们可以在Java中使用私有构造函数。Singleton的目的是控制对象的创建,将对象的数量限制为一个。由于只有一个Singleton实例,因此Singleton的任何实例字段在每个类中只会出现一次,就像静态字段一样。单例通常控制对资源的访问,例如数据库连接或套接字。
访问私有构造函数
要访问私有构造函数(一种方法),请定义一个公共和静态方法,该方法创建并返回类的对象(使用私有构造函数)。
现在,您可以通过调用此方法来获取实例。
示例
在以下Java程序中,我们有一个名为Student的类,其构造函数是private。
在学生类中,我们有一个名称getInstance()为public和static的方法。此方法创建Student类的对象并返回它。
从另一个类中,我们正在调用此(getInstance())方法,并使用获得的实例/对象来调用display()Student类的方法。classStudent{
privateStringname;
privateintage;
privateStudent(){
this.name="Raju";
this.age=20;
}
publicvoiddisplay(){
System.out.println("NameoftheStudent:"+this.name);
System.out.println("AgeoftheStudent:"+this.age);
}
publicstaticStudentgetInstance(){
Studentobject=newStudent();
returnobject;
}
}
publicclassPrivateConstructorExample{
publicstaticvoidmain(Stringargs[]){
Studentobj=Student.getInstance();
obj.display();
}
}
输出结果NameoftheStudent:Raju
AgeoftheStudent:20