我有一个作业,必须创建一个具有输入,输出和介于两者之间的许多其他元素的类。

我需要构建一个从文件创建所有其他元素的构造函数,但是我在文件中没有输入。应该使用称为setInput()的方法来设置输入。

不幸的是,构造函数实例化了一些将输入作为参数的元素。当我调用setInput方法到我先前实例化的元素中的变量时,有什么可能的方式?

最佳答案

您有两种选择:


将“输入”作为参数传递给构造函数,并让构造函数在初始化“元素”时使用其值。
为每个元素(称为类的字段)设置私有或公共设置方法,并以“输入”作为参数。从“ setInput”方法中调用这些设置器。查看以下示例:

公共课程MyClass {
整数element1;
字符串element2;

公共MyClass(){
element1 = new Integer();
element2 =“”;
}

私有setElement1(对象输入){
//根据“输入”中包含的信息设置element1
this.element1 = ...

}

私有setElement2(对象输入){
//根据“输入”中包含的信息设置element2
this.element2 = ...

}
公共setInput(对象输入){
this.setElement1();
this.setElement2();
}
}

10-07 22:43