多态的体现:父引用指向了子类对象。
父类名 引用 = new 子类对象();
多态的好处:提高了程序的扩展性。程序更灵活
多态的弊端:局限性高。父引用只能调用共性内容,其他子类特有内容调用不了。
多态的前提:
A:要有子父类体系(extends,implements)
B:要有重写。
接口和抽象方法的区别?
相同点:和抽象类一样,不能实例化对象,
需要子类实现了所有抽象方法
子类才能实例化对象
否则仍然是一个抽象类
区别:
A:接口不能定义正常方法
B:接口没有构造方法
abstract修饰符,修饰类,修饰成员方法
抽象类,被abstract修饰,能够多定义一种方法:抽象方法。 是不能实例化对象的。
抽象方法,没有方法体。被abstract修饰,必须存在于抽象类中。
子类继承一个抽象类作为父类,想要实例化对象,
必须重写抽象父类所有抽象方法。才能实例化对象。
否则子类还是一个不具体的抽象类。
1.抽象类有没有构造方法??
有,子类构造方法一定要走父类构造方法
一般抽象类中的构造方法,只给子类用。protected修饰
protected权限修饰符。保护权限,子类权限
2.抽象类一定是父类吗?
是。具有强制特性。强制子类干某些事情。
3.抽象类中可以不定义抽象方法?
可以。很少。在设计上会有。
4.abstract不可以和哪些修饰符一起使用?
final
private
static