JAVASE(复习)——继承(extends)

  • 子类拥有父类非 private 的属性、方法。

  • 子类可以拥有自己的属性和方法,即子类可以对父类进行扩展。

  • 子类可以用自己的方式实现父类的方法。

  • Java 的继承是单继承,但是可以多重继承(多重继承就是A继承B,B继承C)

  • 提高了类之间的耦合性(继承的缺点,耦合度高就会造成代码之间的联系越紧密,代码独立性越差)。

一、定义父类

public class Animal {
    private String name;
    private int id;

    //父类方法
    public void eat(){
        System.out.println(name+"正在吃");
    }

    public String getName() { return name; }
    public void setName(String name) { this.name = name; }
    public int getId() { return id; }
    public void setId(int id) { this.id = id; }
}

二、子类使用

public class Dog extends Animal{
    public static void main(String[] args) {
        Animal dog = new Dog();
        dog.setName("修狗");
        dog.eat();//父类方法
    }
}
修狗正在吃

注意:

(1)成员变量:当子类和父类有重名的成员变量时,会发生就近原则,优先使用子类的成员变量,不过可以通过this和super来区分使用。

(2)成员方法:子类和父类出现同名的成员方法,先在子类中找,找不到在去父类中找。

(3)子类中成员方法调用注意,同名的情况下会用this调用子类的方法。

定义父类:

public class Person {
    public void show(){
        System.out.println("父类启动");
    }
}

定义子类:

public class Sun extends Person {
    public void show(){
        System.out.println("子类启动");
    }
    public void method(){
        show();//默认是this调用
    }
}

定义入口:

public class Main {
    public static void main(String[] args) {
        Sun sunSun = new Sun();
        sunSun.method();
    }
}

 结果:

子类启动

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值