メソッドチェーンを利用するクラスを構築する必要があります。メソッドチェーンの概念を理解しています。例:
class Company
{
private String companyName;
public setCompanyName(String companyName)
{
this.companyName = companyName;
return this;
}
public Person addPerson(String name)
{
person = new Person();
person.setName(name);
return person;
}
}
class Person
{
private String name;
private String address;
private bool license
public Person setName(String name)
{
this.name = name;
return this;
}
public Person hasDriverLicense(bool license)
{
this.license = license;
return this;
}
public Person setAddress(String address)
{
this.address = address;
return this;
}
}
//in some other class / method i do:
Company company = new Company()
.setCompanyName("SomeCompany")
.addPerson("Mike")
.setAddress("Street 118");
しかし、私はこれをさらに一歩進める必要があります。私はこれを行うことができる必要があります:
Company company = new Company()
.setCompanyName("SomeCompany")
.addPerson("Mike")
.setAddress("Street 118");
.addPerson("Jane")
.setAddress("Street 342");
.hasDriverLicense(true)
ご覧のとおり、チェーンを続行できる必要があります。メソッドaddAddress
は、チェーンの最後のメソッドであるとは限りません。Person
クラスの任意のメソッドにすることができます。
この機能を実現するための良い方法はありますか?おそらくメソッド拡張か何かで?
ヘルプ/例は大歓迎です。