Java设计模式代码说明

时间:2016-03-14 12:36:48

标签: java design-patterns

我想弄清楚这段代码的作用。它基于设计模式。有人可以解释发生了什么,特别是在getNonTrivialStuff

类型的最后一个方法NonTrivialClass
public class E{
    private SomeOtherClass myObject = null;
    private String trivialString;

    public E(){
        trivialString = "Trivial";
    }

    public String getTrivialStuff(){
        return myTriv;
    }

    public NonTrivialClass getNonTrivialStuff(){
        if (myObject == null){
            myObject = SomeOtherClass.getObject();
        }  
            return myObject.getNonTrivialStuff();
    }

}

1 个答案:

答案 0 :(得分:3)

它类似于Proxy_pattern

如果您的班级 E 实施了一个由 RealSubject 实施的界面,如下所示, E 可以命名为代理服务器即可。

代理是一个包装器或代理对象,客户端正在调用它来访问幕后的真实服务对象

UML图:

enter image description here

代理,最常见的形式,是一个充当其他东西的接口的类。

代理可以与任何东西连接:网络连接,内存中的大对象,文件或其他昂贵或无法复制的资源。

您可以在以下帖子中找到有关代理服务器的更多详细信息:

What is the exact difference between Adapter and Proxy patterns?