我有一个可以用 , 和 构造String
的Record
类Criteria
。有没有办法让方法签名以任何顺序接受这些参数(除了创建多个构造函数)?这更像是一个学术问题。
问问题
326 次
3 回答
6
于 2013-05-22T17:13:24.637 回答
3
一种选择是创建一个包含并表示这三个参数的类,但我只建议如果这三个参数以在对象模型中具有逻辑意义的方式相关。
于 2013-05-22T17:14:53.273 回答
1
你可以这样做:
public class MyClass ()
{
private String _str;
private Record _rec;
private Criteria _crit;
public MyClass ()
{
_rec = null;
_crit = null;
_str = null;
}
public MyClass string (String str)
{
this._str = str;
return this;
}
public MyClass record (Record rec)
{
this._rec = rec;
return this;
}
public MyClass criteria (Criteria crit)
{
this._crit = crit;
return this;
}
public static void getInstance ()
{
return new MyClass ();
}
public static void main (String[] args)
{
MyClass instance = MyClass.getInstance ().string("something").criteria(someCriteria).record(someRecord);
}
}
于 2013-05-22T17:26:40.347 回答