java_236_GOF23设计模式_代理模式_静态模式_练习

//------------------静态模式---------------在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
//---------------------接口-------------------
package java_236_GOF23设计模式_代理模式_静态模式_练习;
/**

  • 接口
    /
    public interface Star {//明星
    //属性
    void confer();//confer协议
    void signContract();//signContract签订合同
    void bookTicket();//bookTicket订票
    void sing();//唱歌
    void collectMoney();//收款
    }
    //------------------ 创建一个明星-------------------------
    package java_236_GOF23设计模式_代理模式_静态模式_练习;
    /
    *

  • 创建一个明星
    /
    public class RealStar implements Star{//RealStar真正的明星
    //重写方法
    public void bookTicket() {
    System.out.println(“RealStar.bookTicket()”);
    }
    public void collectMoney() {
    System.out.println(“RealStar.collectMoney()”);
    }
    public void confer() {
    System.out.println(“RealStar.confer()”);
    }
    public void signContract() {
    System.out.println(“RealStar.signContract()”);
    }
    public void sing() {
    System.out.println(“RealStar(张三本人).sing()”);
    }
    }
    //-------------- 明星的代理---------------------------
    package java_236_GOF23设计模式_代理模式_静态模式_练习;
    /
    *

  • 明星的代理
    */
    public class ProxyStar implements Star{// ProxyStar明星的代理

    private Star star;//创建属性
    //构造器
    public ProxyStar(Star star) {
    super();
    this.star = star;
    }
    public void bookTicket() {
    System.out.println(“ProxyStar.bookTicket()”);
    }
    public void collectMoney() {
    System.out.println(“ProxyStar.collectMoney()”);
    }
    public void confer() {
    System.out.println(“ProxyStar.confer()”);
    }
    public void signContract() {
    System.out.println(“ProxyStar.signContract()”);
    }
    public void sing() {
    star.sing();//真实的引用
    }
    }
    //----------------------------
    package java_236_GOF23设计模式_代理模式_静态模式_练习;
    /**

  • 测试类
    */
    public class Client {
    public static void main(String[] args) {
    Star real = new RealStar();//真正的明星
    Star proxy = new ProxyStar(real);//代理

     proxy.confer();//面谈
     proxy.signContract();//签合同
     proxy.bookTicket();//订票
     proxy.sing();//安排唱歌
     
     proxy.collectMoney();//收款
    

    }
    }
    //--------------------结果---------------------------------
    在这里插入图片描述

类图
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值