1. 程式人生 > >java多態修改成員變量遇到的問題

java多態修改成員變量遇到的問題

使用 方法 http nds img width div public bob

先看兩個程序,出自課程考試,只記得老師講了多態中成員方法的使用,真的是不理解成員變量還有門道。

先看main方法

public class Main {
    public static void main(String[] args) {
        SuperClass superObj=new SuperClass();
        SubClass subObj=new SubClass();
        SuperClass superReferToSub=subObj;

        superReferToSub.method();
        superReferToSub.print();
    }
}

程序一

public class SuperClass {
    int i=0;
    public void method(){
        System.out.println("父類方法");
    }
    public void print(){
        System.out.println(i);
    }

}

class SubClass extends SuperClass {
    //int i=2;
    public void method(){
        i++;
        System.out.println("子類的i變成了
"+i); System.out.println("子類方法"); } }

子類的i變成了1

子類方法

1

程序二

public class SuperClass {
    int i=0;
    public void method(){
        System.out.println("父類方法");
    }
    public void print(){
        System.out.println(i);
    }

}

class SubClass extends SuperClass {
    int i=2;
    public
void method(){ i++; System.out.println("子類的i變成了"+i); System.out.println("子類方法"); } }

子類的i變成了3

子類方法

0

技術分享圖片

技術分享圖片

技術分享圖片

java多態修改成員變量遇到的問題