Supter ss = new TT();
将子类的地址指向了父类的地址,只能调用父类的方法或属性,
子类的的属性和方法在原来的分配的物理地址里面

解决方案 »

  1.   


    class A {
    public void func1() {
    System.out.println("A func1 iscalling");
    }
    public void func2() {
    func1();
    }
    }
    class B extends A{
    public void func1() {
    System.out.println("B func1 is calling");
    }
    public void func3() {
    System.out.println("B func3 is calling");
    }
    }
    class C {
    public static void main(String [] args) {
    B b = new B();
    A a = b;
    callA(a);
    callA(new B());
    }
    public static void callA(A a) {
    a.func1();
    a.func2();
    }
    }
    为什么a.func3();不行?a不是指向b的地址的吗?