Java 中可以使用多个构造函数吗?
java 8object oriented programmingprogramming
一个类中可以有多个构造函数。但是,构造函数的参数列表不应该相同。这称为构造函数重载。
下面给出了一个演示此操作的程序 −
示例
class NumberValue { private int num; public NumberValue() { num = 6; } public NumberValue(int n) { num = n; } public void display() { System.out.println("数字为:" + num); } } public class Demo { public static void main(String[] args) { NumberValue obj1 = new NumberValue(); NumberValue obj2 = new NumberValue(15); obj1.display(); obj2.display(); } }
输出
数字为:6 数字为:15
现在让我们了解一下上面的程序。
NumberValue 类由一个数据成员 num 和一个显示 num 值的单个成员函数 display() 创建。NumberValue 类中有两个构造函数,其中一个不带任何参数,另一个带一个 int 类型的参数。演示此操作的代码片段如下 −
class NumberValue { private int num; public NumberValue() { num = 6; } public NumberValue(int n) { num = n; } public void display() { System.out.println("数字为: " + 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(); } }