一、多态总结
1、父类类型引用指向子类对象
2、只能调用父类定义的方法
3、如果子类中重写父类的一个方法,调用时会调用子类的一个方法
4、多态中,子类可以调用父类中的所有方法
5、多态主要体现为重载和重写。相同的行为,不同的实现方式。
6、多态主要应用为:多态参数;多态集合。
二、抽象类
抽象类:如果一个方法只有方法的定义,没有方法的具体实现,那么该方法称为抽象方法。用修饰符abstract定义。具有抽象方法的类称为抽象类,,也用修饰符abstract 定义。抽象类不能直接实例化。抽象类的变量只能指向子类对象。
注:如果一个类继承抽象类,那么必须重写抽象类中的所有抽象方法,否则编译错误。
抽象方法必须由子类提供具体的实现,所以不能是私有的,抽象方法也不能是静态的,静态方法加载时在对象之前。
抽象方法的意义:可以用父类变量进行子类方法的多态调用。
三、接口
接口:接口可以看做是抽象类的特例;接口中只能定义抽象方法,方法的权限只能是public。接口可以看做是行为的抽象
一个类实现接口后,可以使用接口变量实现类对象,所调用的方法就是实现类的实现方法。
如果一个方法使用接口作为参数,意味着可以传递任何一个该接口的实现类。
注:接口中不能定义属性,只能定义公有的静态常量。
1、父类类型引用指向子类对象
2、只能调用父类定义的方法
3、如果子类中重写父类的一个方法,调用时会调用子类的一个方法
4、多态中,子类可以调用父类中的所有方法
5、多态主要体现为重载和重写。相同的行为,不同的实现方式。
6、多态主要应用为:多态参数;多态集合。
二、抽象类
抽象类:如果一个方法只有方法的定义,没有方法的具体实现,那么该方法称为抽象方法。用修饰符abstract定义。具有抽象方法的类称为抽象类,,也用修饰符abstract 定义。抽象类不能直接实例化。抽象类的变量只能指向子类对象。
注:如果一个类继承抽象类,那么必须重写抽象类中的所有抽象方法,否则编译错误。
抽象方法必须由子类提供具体的实现,所以不能是私有的,抽象方法也不能是静态的,静态方法加载时在对象之前。
抽象方法的意义:可以用父类变量进行子类方法的多态调用。
三、接口
接口:接口可以看做是抽象类的特例;接口中只能定义抽象方法,方法的权限只能是public。接口可以看做是行为的抽象
一个类实现接口后,可以使用接口变量实现类对象,所调用的方法就是实现类的实现方法。
如果一个方法使用接口作为参数,意味着可以传递任何一个该接口的实现类。
注:接口中不能定义属性,只能定义公有的静态常量。