重写:需要有继承关系,是子类重写父类的方法。
1.方法名必须相同
2.参数列表必须相同
3.修饰符:范围可以扩大,但是不能缩小。 private-->protected-->default-->public
4.抛出的异常:范围可以缩小,但是不能扩大; ClassNotFoundException-->expection(大)
重写:子类的方法必须与父类的一致,方法体不同!
为什么要重写?
1.父类的功能子类不一定需要,或者不一定满足!
Alt + insert + override;
多态的注意事项:
1.多态的方法是多态,属性不能多态
2.父类和子类:有联系 类型转换异常(ClassCastException)
3.存在条件:必须要要有继承关系,父类的方法需要在子类重写,父类引用指向子类的对象。
Student extends Person
Student stu = new Student();
Person per = new Student();
Student.go();
强制转换:((Student)stu).go();
instanceof
X instanceof Y 能不能编译通过看有没有继承关系