编辑代码

class Main {
	public static void main(String[] args) {
        //          继承本质详解
        //?->这时请大家注点,要按照找关系来返回信息
        //(1)首先看子类是否有该属性
        //(2)如果子类有这个属性,并且可以访问,则返回信息
        //(3)如果子类没有这个屈性,就看父类有没有这个属性(如果父类有该属性,并且可以访问,就返回信息..)
        //(4)如果父类没有就按照(3)的规则,继续找上级父类,直到0bject...
        Son son=new Son();      //  内存的布局
		System.out.println(son.name);   //  返回“大头儿子”
        System.out.println(son.age);   //  返回 39 ( 子类没有age,但是父类有 age,继承了父类age)
        System.out.println(son.hobby);  //  返回 "旅游" ( 子类、父类没有hobby,但是爷类有 hobby,继承了爷类hobby )

	}
}

class GrandPa{  //爷类继承本质
    String name="大头爷爷"String hobby="旅游";
}

class Father extends GrandPa{   父类
    String name = "大头爸爸" ;
    int age = 39 ;
}

class Son extends Father{   // 子类
    String name = "大头儿子" ;
}