听到链式编程听陌生的,但是写出来就感觉其实很熟悉
package test; public class Test {
String name;
String phone;
String mail;
String sex;
public Test setName(String name) {
this.name = name;
return this;
}
public Test setPhone(String phone) {
this.phone = phone;
return this;
}
public Test setMail(String mail) {
this.mail = mail;
return this;
}
public void setSex(String sex) {
this.sex = sex;
}
public static void main(String[] args) {
Test test = new Test();
test.setName("test").setPhone("110").setMail("admin@china.cn").setSex("中性 ");
}
}
格式中除了最后一个方法不要求必须返回对象或对象引用外,其余set方法都必须返回一个支持方法调用的对象或对象引用;否则将无法完成链式调用,而产生语法错误。
方法链式调用的原理是显而易见的:因为第一个方法调用返回的是该方法的对象引用,因而这个引用可以产生下一个方法调用;如此而已,生成一个调用链
因为最后一个方法调用意味着这个调用链的结束,所以没有必要必须有返回类型
如果方法链式调用应用在输出或者赋值语句中,它的最后一个方法通常返回某个运算结果。
注意 不适当使用方法链式调用将消弱程序的可读性