青软实训.Net学习笔记(3)--接口

1、接口就是一组抽象成员的集合。
2、一个类(或者一个结构)可以支持任意数量的接口,因此也就支持了多种行为。
3、最佳实践:.NET接口多以大写字母“I”作为前缀。
4、接口不指定基类,即使是System.Object也不行,然而,接口可以指定基接口。
当我们定义接口成员时,不需要为这个成员定义实现作用域;接口是纯粹的协议,因此也不会定义实现(留给支持的类或结构)


example:   public interface IPointy
{
//隐式公共和抽象的
byte GetNumberOfPoints();
}
5、接口类型可以包含事件(event),以及索引器定义和属性协议。
6、实现接口是一个“要么全要,要么全不用”的命题。及支持类型必须实现接口中定义的所有成员。
7、所提供的接口成员不能是显示实现的。
8、在运行时判断一个类型是否支持一个指定接口:
   (1):使用显示强制转换
    example:  static void Main(string[] args)
                       {
                            Circle c=new Circle("Lisa");
                            IPointy itfpt=null;
                            try
                            {
                                  itfpt=(IPointy)c;
                                  Console.WriteLine(itfpt.Points);
                             }
                             catch(exception e)
                             {
                                      Console.WriteLine(e.Message);                 
                             }
                       }
    (2):使用as关键字
  example: static  void Main(string[] args)
                      {
                               Hexagon hex2=new Hexagon("Peter");
                              IPointy itfpt2=hex2 as IPointy;
                              if(itfpt2!=null)
                                       Console.WriteLine(itfpt2.Points);
                               else
                                       Console.WriteLine("not Points");
                       }
    (3):使用is关键字
9、接口是有效的.NET类型,可以构造将接口作为参数的方法。同样,接口也可以被用来作为方法的返回值。
10、通过显式接口实现 解决命名冲突
   returnType InterfaceName.MethodName(params)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值