关于类继承的小问题
1、子类对象转化为父类对象后,能调用子类中新增的属性及方法吗?
2、子类中覆写了父类的某个方法,那么当子类对象转为父类对象后,调用这个方法时,所调用的是子类中的还是父类中的?
[解决办法]
1.能
2.子类
[解决办法]
关于第一题,看变量的类型,如果是父类的,只有父类的属性方法,子类同样
若果是多态,属性还是父类,方法是子类
[解决办法]
1.不能
2.子类
[解决办法]
public class Test { public static void main(String[] args) { Son s = new Son(); Parent p = (Parent)s; p.print(); //p.foo(); }}class Parent{ void print(){ System.out.println("parent print"); }}class Son extends Parent{ void print(){ System.out.println("son print"); } void foo(){ System.out.println("son foo()"); }}