黑马程序员-抽象、接口、多态

来源:互联网 发布:js divergence 编辑:程序博客网 时间:2024/05/29 15:35
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
抽象类的特点:
a抽象方法一定在抽象类中
b抽象方法和抽象类都必须被abstract关键字修饰
c抽象类不可以用new关键字新建对象
d抽象类中的抽象方法要被调用,必须由子类复写所有的抽象方法后,建立子类的对象进行调用,如果子类覆盖了部分的抽象方法,那么该子类还是一个抽象类。
e抽象类中可以不定义抽象方法,仅仅是不让该类建立对象。

接口interface:当抽象类中所有的方法都是抽象的,那么该类可以通过接口的形式来表示。正因为接口类中的方法都是抽象的,所以接口不可以创建对象,必须被子类实现并覆盖接口中所有的方法后,才可以对子类进行实例化,否则子类是一个抽象类。
接口定义格式特点:
a接口中的常见定义,常量,抽象方法
b接口中的成员都有固定的修饰符,并会自动补全缺少的修饰符。
常量:public static final
方法:public abstract 

接口的特点:
a接口是对外暴露的规则
b接口是程序的扩展功能
c接口可以用来多实现
d类与接口之间是实现关系,而且类可以继承一个类的同时实现多个接口。接口可以被类多实现,也是对多继承不支持的转换形式,java支持多实现。
e接口与接口之间可以有继承关系

多态:
a多态的体现:父类引用指向子类对象
b多态的前提:必须是类与类之间有关系,要么继承要么实现
c多态的好处:提高了程序的扩展性

d多态的弊端:只能使用父类的引用访问父类的成员


多态使用的注意事项:
多态中成员的特点:
a编译时:参阅引用性变量所属类中是否有调用的方法,如果有编译通


过,否则失败、
b运行时:参阅对象所属的类中是否有调用的方法。

c多态中的成员变量和静态成员函数,无论编译和运行都参考应用型变量所属的类。

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------

0 0