阅读内容

java非静态方法返回当前实例引用

[日期:2007-11-04] 来源:Linux公社  作者:Linuxidc


    今天在写一个工具类时想为使用者提供一个更加方便简单的操作,就是可以在一条语句中多次执行同一个实例的多个方法,比如:

new MyCalss().add(12).add(2).add(4).add(5)

类似这样的,刚开始打算用静态却发现不能解决多个实例的问题。后来无意中查看到一些开源框架的代码中有这样的操作,比如JSONlib中的JSONBuilder类,就可以这样操作,查看源码发现可以在方法中直接使用return this;来返回当前实例,呵呵,不错,这样一来问题就好办很多了~~

    比如我想在一个类中提供使用者多次来添加一个字符串,那么就可以这样做:

package common.utils;

public class MyTest
{
    private List<String> array;

    public MyTest()
    {
        this.array = new ArrayList<String>();
    }

    public MyTest add(String value)
    {
        this.array.add(value);
        return this;
    }

    public static void main(String[] args)
    {
        new MyTest().add("你好!").add("大家好!").add("世界好!");
    }
}

    主要是代码中红色的这一段,通过return this;来返回当前实例的引用!这样我们就可以应用这样的特性来做更多有趣的处理~~~




相关资讯      
本文评论       全部评论
发表评论
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款


点评: 字数
姓名:

L
I
N
U
X


GOOGLE搜索
Google