每次我创建一个新类我都想知道创建构造函数的最佳方法是什么.如果我使用IntelliJ中的默认构造函数,它将创建一个像示例A的构造函数.但在学校我们学会使用方法B.
A和B之间有一些很大的区别吗?
是否有一些首选方式或只是程序员的选择?
例A:
public Model(int modelNumber) {
this.modelNumber = modelNumber;
}
Run Code Online (Sandbox Code Playgroud)
例B
public Model(int modelNumber) {
setModelNumber(modelNumber);
}
public void setModelNumber(int modelNumber) {
this.modelNumber = modelNumber;
}
Run Code Online (Sandbox Code Playgroud)
示例A是更优选的.创建对象的那一刻,您需要调用构造函数来初始化类成员的值,setter和getter用于代码中的其他函数以使用相同的成员!考虑示例A变得非常重要.如果要继承此类,则无法执行调用setter.你不能让你的班级不可继承.
所以答案是否定的!不要使用例B!
干杯!