【发布时间】:2020-08-26 04:52:06
【问题描述】:
我目前正在审查创建构造函数的一般(两种)方法,包括默认的和参数化的,我想问一下这两个示例之间有什么区别。
示例 A:
public class dog {
private String dogName;
public dog() {
dogName = "Toby";
}
public String getDogName() {
return dogName;
}
public static void main(String args[]) {
Dog object = new Dog();
System.out.println(object.getDogName());
}
}
示例 B:
public class dog {
private String dogName;
public dog (String dogName) {
this.dogName = dogName;
}
public static void main(String args[]) {
Dog object = new Dog();
System.out.println(object.getDogName());
}
public static void main (String[] args) {
Dog object = new Dog("Toby");
System.out.println(object.dogName);
}
}
【问题讨论】:
-
您可以动态构造
Dog实例,名称在第二个。 -
@Rono 这超出了我的理解,你有什么“动态构造”的例子吗?
-
第二个为您提供了更大的灵活性,您可以创建不同的 Dog 实例并给它们不同的名称,而第一个是创建名为 Toby 的不同 Dog 实例。
-
示例 A - 所有的狗都被命名为 Toby。示例 B - 狗得到了给它们的名字。参数构造器意味着您可以在构造时自定义一些字段。
Dog dog = new Dog("Toby");创建对象后需要自定义默认构造函数Dog dog = new Dog(); dog.Name="Toby";
标签: java parameters constructor