Java 中是否可以有多个构造函数?
一个类中可以有多个构造函数。但是,这些构造函数的参数列表不得相同。这称为构造函数重载。
一个对此进行演示的程序如下 −
示例
class NumberValue {
private int num;
public NumberValue() {
num = 6;
}
public NumberValue(int n) {
num = n;
}
public void display() {
System.out.println("The number is: " + num);
}
}
public class Demo {
public static void main(String[] args) {
NumberValue obj1 = new NumberValue();
NumberValue obj2 = new NumberValue(15);
obj1.display();
obj2.display();
}
}输出
The number is: 6 The number is: 15
现在我们来理解一下上述程序。
NumberValue 类由数据成员 num 和单一成员函数 display() 创建,后者显示 num 的值。NumberValue 类中有两个构造函数,其中一个不带任何参数,而另一个带有一个 int 类型参数。演示此过程的代码片段如下 −
class NumberValue {
private int num;
public NumberValue() {
num = 6;
}
public NumberValue(int n) {
num = n;
}
public void display() {
System.out.println("The number is: " + num);
}
}在 main() 方法中,创建了 NumberValue 类的对象 obj1 和 obj2,并针对这两类对象调用了 display() 方法。演示此过程的代码片段如下
public class Demo {
public static void main(String[] args) {
NumberValue obj1 = new NumberValue();
NumberValue obj2 = new NumberValue(15);
obj1.display();
obj2.display();
}
}
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP