Maison >Java >javaDidacticiel >Explication détaillée et application pratique du mode proxy statique JAVA

Explication détaillée et application pratique du mode proxy statique JAVA

高洛峰
高洛峰original
2017-02-07 13:11:261527parcourir

Mode proxy statique JAVA

Mode proxy (Proxy) : fournit un proxy pour d'autres objets pour contrôler l'accès à cet objet.

Pour parler franchement, le modèle proxy est représentatif des "objets réels". Il introduit un certain degré d'indirection lors de l'accès aux objets, car cette indirection peut être attachée à diverses utilisations.

Avant de mettre en œuvre le code, laissez-moi vous raconter une histoire de vie simple. Nous savons tous qu'il existe de nombreuses entreprises autour de nous qui vendent ou louent des maisons, comme LianJia, mais LianJia elle-même n'a pas de véritable logement. actifs, les maisons qu'il vend et loue doivent être fournies par le propriétaire immobilier (HomeMaster) afin de répondre aux besoins de logement de l'entreprise ; en même temps, les activités de vente et de location de maisons de l'entreprise nécessitent des employés de l'entreprise (Vendeurs), mais les employés doit remplir Cette méthode doit être autorisée par l'entreprise et utiliser les ressources commerciales de l'entreprise pour accomplir la tâche. À ce stade de l'histoire, nous devons être clairs sur le fait que le vendeur ici est en fait un agent statique en mode agence, nous commençons donc à écrire le code pour ce mode (la logique métier avant et après la méthode d'implémentation de l'agent est omise ici) :

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();
  }
}

Merci d'avoir lu, j'espère que cela aidera tout le monde, et merci pour votre soutien à ce site !

Pour des explications plus détaillées et des exemples d'application du mode proxy statique JAVA, veuillez faire attention au site Web PHP chinois !

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn