java中的继承

继承,变量的访问顺序,就近原则

class Fu{
    int money = 20;
}
class Zi extends Fu{
    int money = 30;
    public void show(){
        int money = 200;
        System.out.println("money"+money); // 就近原则
    }
}
public class FuXi{
    public static void main(String[] args) {
        int money = 100;
        Zi stu = new Zi();
        stu.show();
    }

}
class Fu{
    int money = 20;
}
class Zi extends Fu{
    int money = 30;
    public void show(){
        int money = 200;
        System.out.println("money"+money); // 就近原则
        System.out.println("money:"+this.money); // 通过this指定为本类的成员变量
        System.out.println("money:"+super.money);// 通过super指定为父类的成员变量
    }
}
public class FuXi{
    public static void main(String[] args) {
        int money = 100;
        Zi stu = new Zi();
        stu.show();
    }

}
class Fu{
    public Fu(){
        System.out.println("父类的无参构造方法。。。。");
    }
    int money = 20;
}
class Zi extends Fu{
    String name;
    int age;
    public Zi(){
        // 创建子类对象时在调用子类的构造器之前默认调用了父类的构造方法
        super(); // 默认就会调用此方法
        System.out.println("子类的构造方法。。");
    }

    public Zi(String name, int age, int money) {
        this.name = name;
        this.age = age;
        this.money = money;
        System.out.println("子类的全参构造器调用了。。。");
    }

    int money = 30;
    public void show(){
        int money = 200;
        System.out.println("money"+money); // 就近原则
        System.out.println("money:"+this.money); // 通过this指定为本类的成员变量
        System.out.println("money:"+super.money);// 通过super指定为父类的成员变量
    }
}
public class FuXi{
    public static void main(String[] args) {
        int money = 100;
        Zi stu = new Zi("zhaoyun",15,1000);
        stu.show();
    }

}
posted @ 2022-10-31 21:03  竹石2020  阅读(14)  评论(0编辑  收藏  举报