面向对象进阶

2023-12-27 20:48:04

继承

关键字extends

使用继承的好处:

1.可以把多个子类中重复的代码抽取到父类中了,提高了代码的复用性。

2.子类可以在父类的基础上,增加其他的功能,使子类更强大。

什么时候使用继承:

当类与类之间,存在相同(共性)的内容,并满足子类是父类的一种,就可以考虑用继承,来优化代码。

继承的特点:

java只支持单继承:一个类只能继承一个直接父类,不支持多继承,但支持多层继承。

每一个类都直接或间接的继承于Object

ackage oop.Extends.a01oopextendsdemo01;
//权限修饰符:
//private:子类就无法访问了
//私有:只能在本类中访问
//注意事项:子类只能访问父类中非私有的成员
public class Animal {
    public void eat(){
        System.out.println("吃东西");
    }
    public void drink(){
        System.out.println("喝水");
    }
}
package oop.Extends.a01oopextendsdemo01;

public class Cat extends Animal{
    public void catchMouse(){
        System.out.println("猫在抓老鼠");
    }
}
package oop.Extends.a01oopextendsdemo01;

public class Dog extends Animal{
    public void lookHome(){
        System.out.println("狗看家");
    }
}
package oop.Extends.a01oopextendsdemo01;

public class Husky extends Dog{
    public void breakHome(){
        System.out.println("哈士奇在拆家");
    }
}
package oop.Extends.a01oopextendsdemo01;

public class LiHua extends Cat{
}
package oop.Extends.a01oopextendsdemo01;

public class Ragdoll extends Cat{
}
package oop.Extends.a01oopextendsdemo01;

public class Teddy extends Dog{
    public void touch(){
        System.out.println("泰迪又在蹭我的腿了");
    }
}
public class Test {
    public static void main(String[] args) {
        //创建对象并调用方法
        //1.创建布偶猫的对象
        Ragdoll ragdoll=new Ragdoll();
        ragdoll.eat();
        ragdoll.drink();
        ragdoll.catchMouse();
        System.out.println("*********");
        //2.创建哈士奇的对象
        Husky h=new Husky();
        h.eat();
        h.drink();
        h.lookHome();
        h.breakHome();
    }
}

文章来源:https://blog.csdn.net/qq_52326978/article/details/135254652
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。