java学习笔记4

class BaseA {

    public void print1()
    {
        System.out.println("Base Print");
    }
    public void print2()
    {
        print1();
    }
    public BaseA() {

    }

}
class A extends BaseA{
    public A()
    {
    }
    public void print1()
    {
        System.out.println("No Base print");
    }
}
public class Demo {

    public static void main(String[] args) {
        // TODO, add your application code
        System.out.println("Hello World!");
        A a=new A();
        a.print2();
    }
}

结果是:Hello World!

    No Base print

注:父类的方法f2()中使用了父类中的方法f1(),在子类中,子类覆盖了方法f1().则定义子类变量M,M使用方法f2()时,f2()会使用子类中被覆盖的方法f1()

原文地址:https://www.cnblogs.com/limingluzhu/p/2679803.html