接口的作用

public interface IStone  //定义一个接口,名字以大写I开头(通用写法)
 {
    void Send(Email mail); //定义一个方法,用来发送邮件(接口无法定义属性)

}


public class stoneEmailSender : IStone (这个类继承了上面定义的接口,在类里实现接口的具体方法,不实现的话编译时会报错)
{
    public void Send(Email mail)  //使用接口的好处是各个继承接口的类都需实现相同名称的方法,后面调用方便
    {
        //实现接口的具体方法
     }

    。。。。。。
}

使用时

stoneEmailSender myEmailSend = new stoneEmailSender();  //程序员可以使用这个类的接口方法,还能使用其它的非接口公用方法,更换组件时需再次核对代码,很麻烦


 IStone myEmailSend = new stoneEmailSender();  //为了限定用户程序员可能不规范的使用, 采用标准服务接口IStone来声明对象, 这样用户就没法去调用只属于stoneEmailSender自己特有的方法了, 更换组件的时候省心不少.


IStone myEmailSend  = stoneEmailSenderFactory.Create();  //用工厂模式就更明显了,工厂模式用来推迟组件的实例化,在组件要用到时再读取xml文件,用反射的方法来生成实体类,这样看起来无论声明和实例化都脱离了对具体组件的依赖


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值