デザインパターン - Proxy
【proxyパターンとは】
代理人オブジェクトと本人オブジェクトを作成し、
本人でしかできない処理以外は代理人オブジェクトが行う。
【proxyパターンのクラス図】
【proxyパターンのメリット】
さ~
【サンプル】
Teacher.java |
package proxy;
public interface Teacher {
public void answer1();
public void answer2();
public void answer3();
}
|
MainTeacher.java |
package proxy;
public class MainTeacher implements Teacher {
@Override
public void answer1() {
System.out.println("回答は1です。");
}
@Override
public void answer2() {
System.out.println("回答は2です。");
}
@Override
public void answer3() {
System.out.println("回答は3です。");
}
}
|
Soup.java |
package abstractFactory.abstractItem;
// 抽象部品
public abstract class Soup {
public abstract String getName();
}
|
ProxyTeacher.java |
package proxy;
public class ProxyTeacher implements Teacher {
private MainTeacher mainTeacher = new MainTeacher();
@Override
public void answer1() {
System.out.println("回答は1です。");
}
@Override
public void answer2() {
System.out.println("回答は2です。");
}
@Override
public void answer3() {
mainTeacher.answer3();
}
}
|
ProxyTest.java |
package proxy;
public class ProxyTest {
/**
* @param args
*/
public static void main(String[] args) {
Teacher teacher = new ProxyTeacher();
teacher.answer1();
teacher.answer2();
teacher.answer3();
}
}
|
実行結果 |
回答は1です。
回答は2です。
回答は3です。
|