interface Network {
void browse(); // 上网的浏览功能
}
class Real implements Network{
@Override
public void browse() {
// 实现浏览功能
System.out.println( "真实操作-----已进入浏览界面");
}
}
class Proxy implements Network {
private Network network; // 声明代理对象
public Proxy(Network network) {
super();
this.network = network;
}
public void chack() {
System.out.println( "代理功能负责----检查用户是否合法化等更多的操作功能");
}
@Override
public void browse() {
//实现接口的浏览功能
this.chack();
this.network.browse(); // 调用真实的主题操作
}
}
public class ProxyDemo {
/**
* 代理设计模式---完成了与业务功能相关的更多功能
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Network network = null;
network = new Proxy( new Real()); // 指定代理
network.browse(); // 客户只关心上网浏览问题
}
}
void browse(); // 上网的浏览功能
}
class Real implements Network{
@Override
public void browse() {
// 实现浏览功能
System.out.println( "真实操作-----已进入浏览界面");
}
}
class Proxy implements Network {
private Network network; // 声明代理对象
public Proxy(Network network) {
super();
this.network = network;
}
public void chack() {
System.out.println( "代理功能负责----检查用户是否合法化等更多的操作功能");
}
@Override
public void browse() {
//实现接口的浏览功能
this.chack();
this.network.browse(); // 调用真实的主题操作
}
}
public class ProxyDemo {
/**
* 代理设计模式---完成了与业务功能相关的更多功能
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Network network = null;
network = new Proxy( new Real()); // 指定代理
network.browse(); // 客户只关心上网浏览问题
}
}
转载于:https://blog.51cto.com/haiyuanxi/924745