JAVA 静的プロキシ モード
プロキシ モード (プロキシ): このオブジェクトへのアクセスを制御するために他のオブジェクトにプロキシを提供します。
率直に言うと、プロキシ パターンは「実際のオブジェクト」の代表的なものであり、オブジェクトにアクセスするときにある程度の間接化が導入されます。これは、この間接化がさまざまな用途に適用されるためです。
コードを実装する前に、簡単な生活の話をさせてください。LianJia など、住宅を販売または賃貸している会社がたくさんあることは誰もが知っていますが、LianJia 自体には実際の住宅資産はありません。会社の住宅ニーズを実現するには、不動産所有者 (HomeMaster) が販売と賃貸を提供する必要があります。同時に、会社の住宅販売と賃貸事業には従業員 (Seller) が必要ですが、従業員はこの方法を実行する必要があります。このタスクは、会社の承認と会社のビジネス リソース チャネルの使用によってのみ完了できます。ストーリーのこの時点では、ここでの販売者が実際には代理店モードの静的エージェントであることを知っておく必要があるため、このモードのコードの作成を開始します (エージェント実装メソッドの前後のビジネス ロジックはここでは省略されています)。
interface LianJia{//LianJia提供房屋买卖的渠道方法(公司业务) public void sellHouse(); } class HomeMaster implements LianJia{//房主需要通过链家卖房(实现公司的业务渠道) public void sellHouse(){ System.out.println("我有套房子要卖"); } } class Seller implements LianJia{//链家的业务需要Seller实现 private LianJia lj;//声明链家公司(可理解为必须证明该seller是链家的),方便调用方法 public Seller(LianJia lj){ this.lj = lj; } public void sellHouse(){ lj.sellHouse();//实际实现方式需要调用公司的业务渠道方法 } } public class ProxyMode{ public static void main(String[] args){ HomeMaster hm = new HomeMaster(); Seller s = new Seller(hm);//代理代房主实现卖房需求 s.sellHouse(); } }