0
我有一个类有11个变量,需要使用用户提供的输入来设置。这个类有以下构造函数和方法:在Java的构造函数中使用设置方法设置数据?
public class Sample {
int id;
Date date;
String location;
int sampleNum;
(...)
String[] keywords;
public Sample()
{
keywords = new String[5];
setData();
}
public void setData()
{
location = JOptionPane.showInputDialog("");
sampleNumber = Integer.parseInt(JOptionPane.showInputDialog(""));
....
....
....
....
}
这是因为我有这样的方法的另一个类:
public class SamplesList {
Sample sample;
boolean inUse;
SamplesList next; //next element in SamplesList
SamplesList prev; //previous element in SamplesList
public SamplesList(){
inUse = false;
next = null;
prev = null;
}
public void setSamples()
{
int sampleNum = Integer.parseInt(JOptionPane.showInputDialog(""));
for (int i = 1; i <= sampleNum; i++)
{
JOptionPane.showMessageDialog(null, "Data #"+i);
this.add(new Sample());
//assuming SamplesList has a method add() that works exactly like an ArrayList.
}
}
我需要创建我需要通过输入设置样本并添加到列表中。但是,当我打电话给主要的一切。
public static void main (String args[])
{
SamplesList sL = new SamplesList();
sL.setSamples();
}
sampleList因为如果他们没有被设置,已经添加了所需的列表,但与每一个变量元素的适量。
你能推荐我一些东西吗?我知道在构造函数中使用方法是个坏主意D:
大约一个小时前你不问这个问题吗?你为什么要重新发帖? – EJK 2014-12-05 00:37:55
因为我给出的解释不正确,所以我在发布之后像7分钟那样删除了旧的那个。 – RedSkull 2014-12-05 00:42:14
确保一个类具有尽可能少的依赖关系是很好的设计。在你的发布代码中,你的类依赖Gui来设置它的值。班级根本不需要知道gui。相反,将值作为参数传递给构造函数或设置其成员变量的类方法。 – 2014-12-05 00:46:50