多态

多态总结:
1、使用父类类型的引用指向子类的对象。
2、该引用只能调用父类中定义的方法,不能调用类中独有的方法。
3、如果子类中重写了父类中的一个方法,那么在调用该方法的时候,将会调用子类中的这个方法。
4、在多态中,子类可以调用父类中所有方法。
5、多态主要体现为重载和重写。相同的行为不同的实现方式。
6、多态主要应用为多态参数和多态集合。
7、如果一个方法中有父类作为参数类型,就意味着可以给该方法传递任何一个子类对象。
8、如果一个类中只有方法定义,没有方法具体实现,那么该方法就称为抽象方法。而拥有抽象方法的类叫抽象类,用关键字 abstract 。抽象类不能直接实例化,如果要实例化抽象类,那么抽象类变量需要指向子类对象。
9、抽象类中,可以定义抽象方法,也可以定国具体方法。如果一个类继承抽象类,必须重写抽象类中定义的所有抽象方法。
10、抽象方法定国的意义在于,使用父类变量指向子类对象时,可以对抽象方法进行调用。
11、接口可以是一种行为抽象。接口可以看做是抽象类特例。抽象类中可以有抽象方法,可以有具体方法。但接口中只能有抽象方法。定义接口使用interface。实现接口使用impiements。
12、接口中定义的方法都是抽象方法,修饰符为 public adstract。即使缺省,也是公共的抽象方法及public。
13、如果一个方法参数为接口类型,意味着可以传递该接口的任何实现类对象。
14、接口中可以定义变量,其修饰符是public static final。
15、接口可以继承接口。同时可以多继承接口。一个类实现一个接口,不但要实现该类接口中定义的抽象方法,而且要实现该接口父接口中定义的抽象发发。
16、抽象类和接口的区别:
①、抽象类和接口都不能直接实例化。
②、抽象类中可以有抽象方法,也可以有具体方法,但接口类中只能有抽象方法。
③、抽象类中定义的变量是扑通属性。但接口中定义的变量是公共的静态的常量。
④、一个类只能继承一个抽象类,但是可以实现多个接口。

原文地址:https://www.cnblogs.com/qhmm/p/5937429.html