代理模式-设计模式

代理模式主要是将管理与计算分开进行,避免在直接访问对象时,遇到的一些问题,从而对一个对象执行一些控制或处理。

//创建一个接口负责数据计算,算的上一个协议
interface ICalc{
    calc(num1,num2):number;
}

//代理人A实现接口,承接接口的协议
class personA implement ICalc{
    clac(num1,num2){
        return num1 + num2;
    }
}

//代理人B实现接口,承接接口的协议
class personA implement ICalc{
    clac(num1,num2){
        return num1 * num2;
    }
}

//负责控制代理和管理数据
class person{
    //代理,遵循接口协议
    delegate:ICalc;

    //获取num1和num2的计算结果
    GetNum(num1:number,num2:number){
        let num = this.delegate.calc(num1,num2);
        document.write(num);
    }
}

//实例一个对象
let person = new Person();

//设定一个代理
person.delegate  = new personA();

//输入参数
person.GetNum(5,3);
    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值