【原】接口

//接口是一个特殊的抽象类;
//接口不能实例化;
//接口中的成员默认就是抽象的;
//只能定义属性 方法 索引器 事件;
//抽象成员不能有访问修饰符 默认就是Public;
//实现接口的类必须要实现接口中的所有的成员;
//实现类在实现接口的成员的时候不要写override;
//实现成员的时候,必须要保证签名一致;
//接口就是一个纯粹的为了规范实现类的;

//抽象类:可以找到父类 并且希望通过父类继承给子类的一些成员 族
//接口:多个类具有相同的方法,但是却找不出父类

//1个类只能继承1个父类,但是可以实现多个接口,父类要写在第一个位置,一定程度上解决了类的单根性的问题
//接口可以继承接口;支持多继承;
//接口中的成员可以实现为抽象方法或者虚方法 让实现类的子类去实现;
//显示实现接口是为了解决方法名冲突的问题 显示实现的接口的方法是私有的,所以不能通过对象的变量来调用;
//显示实现接口这个接口的实现方法只能通过接口变量来调用;
//要避免定义多功能接口 以免造成接口污染;

//【装箱】
//装箱:就是把值类型转换成引用类型;
//拆箱:就是把引用类型转换为值类型;
//装箱和拆箱是比较消耗性能的,要尽量的去避免在我们的程序中发生这样的行为;


//【抽象方法】
/*
1、没有方法体;
2、必须在抽象类中;
3、子类必须重写抽象方法 除非子类也是1个抽象类;
4、抽象类不能实例化;
5、抽象成员的访问修饰符不能是private;
6、子类不能通过base关键字去调用父类的抽象方法;
*/
//【接口】
/*
1、接口是1个特殊的抽象类;
2、属性 方法 索引器 事件;
3、接口成员不能加访问修饰符;
4、实现接口的类必须要实现接口中的所有的成员 但是实现可以为虚方法或者抽象方法;
5、类是单继承 但是可以多实现;
6、抽象类强调族的概念;接口完全就是一种约束 规范实现类的行为;
7、接口可以多继承;
8、定义接口的时候 避免接口污染;
9、
*/
View Code
原文地址:https://www.cnblogs.com/gebenhagen/p/3710493.html