(1) 接口不能被实例化
(2) 接口只能包含方法声明
(3) 接口的成员包括方法、属性、索引器、事件
(4) 接口中不能包含常量、字段(域)、构造函数、析构函数、静态成员
(5) 接口中的全部成员默认为public,所以接口中不能有private修饰符
(6) 派生类必须实现接口的全部成员
(7) 一个类能够直接实现多个接口,接口之间用逗号隔开
(8) 一个接口能够有多个父接口,实现该接口的类必须实现全部父接口中的全部成员
(1) 抽象方法只做声明,而不包含实现,能够当作是没有实现体的虚方法
(2) 抽象类不能被实例化
(3) 抽象类能够但不是必须有抽象属性和抽象方法,可是一旦有了抽象方法,就必定要把这个类声明为抽象类
(4) 具体派生类必须覆盖基类的抽象方法
(5) 抽象派生类能够覆盖基类的抽象方法,也能够不覆盖。若是不覆盖,则其具体派生类必须覆盖它们。
(1) 均可以被继承
(2) 都不能被实例化
(3) 均可以包含方法声明
(4) 派生类必须实现未实现的方法
1.接口规定了你能作什么,而抽象类定义了你是什么。函数
2. ① 飞机会飞,鸟会飞,他们都继承了同一个接口“飞”;可是F22属于飞机抽象类,鸽子属于鸟抽象类。继承
② 就像铁门木门都是门(抽象类),你想要个门我给不了(不能实例化),但我能够给你个具体的铁门或木门(多态);并且只能是门,你不能说它是窗(单继承);一个门能够有锁(接口)也能够有门铃(多实现)。 门(抽象类)定义了你是什么,接口(锁)规定了你能作什么(一个接口最好只能作一件事,你不能要求锁也能发出声音吧(接口污染))。索引