java超链接怎么做_如何在Java中实现方法链接?

让您的方法返回setMessage(String),例如:

public Dialog setMessage(String message)

{

//logic to set message

return this;

}

这样,每次调用其中一个方法后,您将获得返回的同一对象,以便可以调用另一个方法。

当您要在对象上调用一系列方法时,此技术很有用:它减少了实现该方法所需的代码量,并允许您在方法链之后使用单个返回值。

减少显示对话框所需的代码量的一个示例是:

// Your Dialog has a method show()

// You could show a dialog like this:

new Dialog().setMessage("some message").setTitle("some title")).show();

使用单个返回值的示例为:

// In another class, you have a method showDialog(Dialog)

// Thus you can do:

showDialog(new Dialog().setMessage("some message").setTitle("some title"));

Dennis在您的问题的评论中提到的使用Builder模式的示例:

new DialogBuilder().setMessage("some message").setTitle("some title").build().show();

使用构建器模式,您可以在构建对象之前为类的新实例设置所有参数(考虑具有setMessage(String)字段或对象的类,这些字段或对象在构建后设置值比在构造时设置值更昂贵) 。

在上面的示例中:setMessage(String)、setTitle(String)属于DialogBuilder类,并返回与它们相同的DialogBuilder实例。 build()方法属于DialogBuilder类,但返回Dialog对象show()方法属于Dialog类。

额外

这可能与您的问题无关,但可能会帮助您和遇到此问题的其他人。

这对大多数用例都适用:在不涉及继承的所有用例中,以及在派生类未添加要链接在一起的新方法并且对使用不感兴趣的新方法时,所有不涉及继承的特定用例(无强制转换) )方法链的结果作为派生对象。

如果要对派生类的对象进行方法链接,而派生类的对象在其基类中没有方法,或者想让方法链将对象返回为派生类的引用,则可以查看答案 对于这个问题。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值