1.多态作用于方法,而不是属性
2.具体指向不同时对方法的调用关系
对于子类对父类重写的方法,无论是父类引用指向子类对象(多态)还是直接创建一个子类对象,都会调用子类中已经重写的方法。
如果子类没有重写父类方法,那么在调用时会使用父类中的方法。注意!多态时s1不能调用子类中独有的方法,因为对象能执行哪些方法主要与左边的类有关。
3.不能重写的方法
static 方法:因为static方法属于类本身而不是实例,因此子类无法提供一个不同的static方法来“替换”或“重写”父类中的static方法。(当你尝试在子类中定义一个与父类static方法签名相同的方法时,你实际上是在子类中隐藏(或阴影,shadowing)了父类的static方法,而不是重写它。这意味着在子类中调用该方法时,将执行子类的static方法,而不是父类的。但这并不等同于重写,因为从多态的角度来看,通过父类引用调用该方法时,仍然会执行父类的static方法。)
final方法
private方法