JAVA基础-多态

2017-03-10  本文已影响19人  小沫360

JAVA基础-多态

定义一个父类

public class Fa {

    int a = 1;
    
    public void work(){
        
        System.out.println("父类方法");
    }
}

定义一个子类

public class So extends Fa{

    int a = 1;
    
    public void work(){
        
        System.out.println("子类方法");
    }
}


Fa f = new So();
        
System.out.println(f.a);//输出为1,父类的值。

f.work();//输出为"子类方法",调用了子类方法

结论:

1、当子父类中出现同名的成员变量时,多态调用该变量时,如果父类没有该变量,则编译失败。如果父类有该变量,运行会调用父类的变量。
2、当子父类中出现同名的成员方法时,多态调用该方法时,如果父类没有该方法,则编译失败。如果父类有该方法,运行会调用子类的方法。
上一篇 下一篇

猜你喜欢

热点阅读