目录

java 继承问题

方法可以继承,可以覆盖

属性只能继承,不能覆盖,看似同名其实只在当前类中有作用

继承体系中调用方法都是从this 所在类向上查找,调用属性都是从方法执行所在类中向上查找



package cool.sale;

import org.junit.Test;

public class TestDb {

    class A {
        public String string = "A";

        public String getString() {
            return string;
        }

        public void print(){
            System.out.println(getString());
        }
    }

    class B extends A{
        public String string = "B";
        public String getString() {
            return string;
        }
    }

    class C extends B{
//        @Override
//        public String getString() {
//            return string;
//        }

        public String string = "C";
    }

    @Test
    public void name() {
        new A().print();
        new B().print();
        new C().print();
    }
}