linux下node環境變數配置檔案,Linux下配置Node環境變數及問題詳解
阿新 • • 發佈:2022-05-17
1.概念
2.使用代理模式的作用
3. 實現代理的方式
1. 靜態代理
1)代理類是自己手工實現的,自己建立一個java類表示代理類
2)同時你所要代理的目標類是確定的。
優點: 實現簡單 容易理解
缺點:1)當目標類增加了,代理類可能也需要成倍的增加
2)當你的介面中的功能增加了 或者修改了 會影響眾多的實現類
示例:模擬使用者購買u盤
使用者:客戶端類
廠家:目標類
商家:代理類 代理某個品牌的u盤。
程式碼:
/*
實現步驟:
1.建立介面 定義賣u盤方法 表示你的廠家和商家做的事情
2. 創建廠家類 實現1介面
3. 建立商家代理類 實現1介面
4. 建立客戶端類 呼叫商家方法買1個u盤
*/
public interface UsbSell { // amount:一次購入的數量 返回值表示1個u盤的價格 float sell(int amount); // 還可以定義多個其它方法 }
// 目標類:金士頓廠家 不接受使用者單獨購買 public class UsbKingFactory implements UsbSell{ @Override public float sell(int amount) { // 一個u盤85.0 // 後期根據amount可以實現不同的價格 return 85.0f; } }// 商家 代理金士頓u盤的銷售 public class TaoBao implements UsbSell{ // 宣告 商家代理的廠家具體是誰 private UsbKingFactory factory = new UsbKingFactory(); @Override public float sell(int amount) { // 向廠家傳送訂單 float price = factory.sell(amount); // 商家需要加價 price = price+5; // 這裡可以新增其它程式碼 進行功能增強return price; } } public class ShopMain { public static void main(String[] args) { // 代理物件 淘寶 TaoBao taoBao = new TaoBao(); float price = taoBao.sell(1); System.out.println("通過商家淘寶 購買u盤單價:"+price); } }
代理類完成的功能
1. 目標類中方法的呼叫(控制訪問)
2. 功能增強
2. 動態代理
優點:避免靜態代理的缺點。目標類即使很多 代理類數量可以很少 當你修改了介面中的方法時,不會影響代理類。
概念:在程式執行過程中,使用jdk反射機制,建立代理類,並動態指定要代理的物件。 即你不用手動建立TaoBao類就能建立代理物件
分類:
JDK動態代理