java接口中的代理设计模式代码时实践

概念:两个子类共同实现一个接口,其中一个子类负责真实业务实现,另一个子类完成辅助真实业务主题的操作。

package www.miao.java;
interface ISubject{
  //核心功能是买电脑
  public void buyComputer();
}
//真实业务实现
class RealSubject implements ISubject{

  public void buyComputer() {
    System.out.println("买一台外星人电脑");
  }
}
class proxySubject implements ISubject{
  //真实的操作业务
  private ISubject subject;

  public proxySubject(ISubject subject) {
    this.subject = subject;
  }


  public void produceComputer() {
    System.out.println("生产外星人电脑");
  }

  public void afterSale()
  {
    System.out.println("外星人电脑售后");
  }


  public void buyComputer() {
    //真实操作前的准备
    this.produceComputer();
    //调用真实业务
    this.subject.buyComputer();
    //操作后的收尾
    this.afterSale();
  }
}

class Factory{
  public static ISubject getInstance()
  {
    return new proxySubject(new RealSubject());
  }
}
public class Test{
  public static void main(String [] args){
    ISubject subject = Factory.getInstance();
    subject.buyComputer();
  }
 }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。