深入浅出java设计模式--静态代理(史上最全设计模式导学目录)
生活随笔
收集整理的這篇文章主要介紹了
深入浅出java设计模式--静态代理(史上最全设计模式导学目录)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1、定義通用接口
/**
* 定義通用接口
* @author Administrator
* @date 2018/7/22
*/
public interface IBusiness {
/**
* 接口執行方法
*/
void execute();
}
登錄后復制
2、定義真實操作實現類
/**
* 真實操作實現類
* @author Administrator
* @date 2018/7/22
*/
public class BusinessImpl implements IBusiness{
@Override
public void execute() {
System.out.println("真正執行操作......");
}
}
登錄后復制
3、靜態代理操作
/**
* 靜態代理
* @author Administrator
* @date 2018/7/22
*/
public class ProxyBusiness implements IBusiness{
/**
* 定義需要執行的接口
*/
private IBusiness business;
/**
* 通過set方法傳參,真實需要執行的對象
*/
public void setBusiness(IBusiness business) {
this.business = business;
}
/**
* 代理對象執行操作
*/
@Override
public void execute() {
if(business == null){
System.out.println("實際操作對象為null");
return;
}
before();
business.execute();
after();
}
/**
* 執行操作前
*/
public void before(){
System.out.println("執行操作前......");
}
/**
* 執行操作后
*/
public void after(){
System.out.println("執行操作后......");
}
/**
* 測試
*/
public static void main(String[] args) {
ProxyBusiness proxyBusiness = new ProxyBusiness();
BusinessImpl business = new BusinessImpl();
proxyBusiness.setBusiness(business);
proxyBusiness.execute();
}
}
登錄后復制
總結:靜態代理可以通過實現通用接口的不同實現類,來完成相關代理,但是不是相同的通用接口則無效;需要實現很多個接口和代理類,導致代理接口和實現類龐大,不便維護。推薦使用動態代理。
以上就是深入淺出java設計模式--靜態代理的詳細內容,更多請關注風君子博客其它相關文章!
總結
以上是生活随笔為你收集整理的深入浅出java设计模式--静态代理(史上最全设计模式导学目录)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 刺激战场帅气的名字(一提刺激消费)
- 下一篇: Scala学习(十二)高阶函数