我们可以在Java中使用私有的构造函数吗?
甲构造用于创建时初始化对象。从语法上讲,它类似于一种方法。区别在于,构造函数的名称与其类相同,并且没有返回类型。
无需显式调用构造函数,这些构造函数会在实例化时自动调用。
构造函数允许的访问说明符/修饰符
构造函数允许使用public,protected和private修饰符。
创建单例类时,我们可以在Java中使用私有构造函数。Singleton的目的是控制对象的创建,将对象的数量限制为一个。由于只有一个Singleton实例,因此Singleton的任何实例字段在每个类中只会出现一次,就像静态字段一样。单例通常控制对资源的访问,例如数据库连接或套接字。
访问私有构造函数
要访问私有构造函数(一种方法),请定义一个公共和静态方法,该方法创建并返回类的对象(使用私有构造函数)。
现在,您可以通过调用此方法来获取实例。
示例
在以下Java程序中,我们有一个名为Student的类,其构造函数是private。
在学生类中,我们有一个名称getInstance()
为public和static的方法。此方法创建Student类的对象并返回它。
从另一个类中,我们正在调用此(getInstance())方法,并使用获得的实例/对象来调用display()
Student类的方法。
class Student{private String name;
private int age;
private Student(){
this.name = "Raju";
this.age = 20;
}
public void display(){
System.out.println("Name of the Student: "+this.name );
System.out.println("Age of the Student: "+this.age );
}
public static Student getInstance() {
Student object = new Student();
return object;
}
}
public class PrivateConstructorExample{
public static void main(String args[]) {
Student obj = Student.getInstance();
obj.display();
}
}
输出结果
Name of the Student: RajuAge of the Student: 20
以上是 我们可以在Java中使用私有的构造函数吗? 的全部内容, 来源链接: utcz.com/z/357914.html