<<Java>> 继承

🐖🐖🐖🐖如果喜欢!!🐂🐂🐂🐂

🐖🐖🐖🐖欢迎关注!!🐂🐂🐂🐂

🐖🐖🐖🐖持续回访!  !🐂🐂🐂🐂

CSDN主页:所有博客内容,Java大树逐渐成长

Gitee地址:想看博客代码??点击这里

QQ : 1939639916(有问题可以加好友,提前说明哦)


目录

❤️❤️继承的概念

❤️❤️生活中的继承

❤️❤️类的继承格式

❤️❤️继承的作用

😊😊不用继承--学继承之前疯狂复制写

😊😊用了继承--学继承之后so easy

😊😊总结

❤️❤️继承的限制

❤️❤️final 关键字



继承的概念

继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类。

继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。


生活中的继承

🐕和🐱和🤾属于哺乳动物,🐍和🐊属于爬行动物。

哺乳动物和爬行动物又属于动物。

所以继承需要符合的关系是:is-a,父类更通用,子类更具体。

虽然哺乳动物和爬行动物都是属于动物,但是两者的属性和行为上有差别,所以子类会具有父类的一般特性也会具有自身的特性。


类的继承格式

class 父类 {
} 
class 子类 extends 父类 {//注意extends是继承的一个关键字
}


继承的作用

为什么需要继承?写代码的过程中,比如需要写一个动物乐园,难道我们需要每一种动物都要创建一个类,写很多很多的重复代码吗??当然不需要,继承就可以解决这个代码冗余的问题。

下面我们通过例子来说明:假设我们写一个动物乐园,定义很多种动物

不用继承

🐕🐕🐕🐕🐕🐕  狗 类 🐕🐕🐕🐕🐕🐕

    class dog{
        String name;//名字
        String color;//颜色
        String food;//食物
        int age;//年龄
        public dog(String name, String color, String food, int age) {
            this.name = name;
            this.color = color;
            this.food = food;
            this.age = age;
        }
    }

🐱🐱🐱🐱🐱🐱 猫 类 🐱🐱🐱🐱🐱🐱

    class cat{
        String name;
        String color;
        String food;
        int age;

        public cat(String name, String color, String food, int age) {
            this.name = name;
            this.color = color;
            this.food = food;
            this.age = age;
        }
    }

 🕊️🕊️🕊️🕊️🕊️🕊️ 鸟 类  🕊️🕊️🕊️🕊️🕊️🕊️

    class brid{
        String name;
        String color;
        String food;
        int age;

        public brid (String name, String color, String food, int age) {
            this.name = name;
            this.color = color;
            this.food = food;
            this.age = age;
        }
    }

用了继承

public class demo {
    class Animalpark{//这是一个父类 Animalpark动物乐园
        String name;
        String color;
        String food;
        int age;
        public Animalpark (String name, String color, String food, int age) {
            this.name = name;
            this.color = color;
            this.food = food;
            this.age = age;
        }
    }
    class dog extends Animalpark{//这是一个狗类继承了动物乐园
        public dog(String name, String color, String food, int age) {
            super(name, color, food, age);//用super调用父类的构造方法
        }
    }
    class cat extends Animalpark{//这是一个猫类继承了动物乐园
        public cat(String name, String color, String food, int age) {
            super(name, color, food, age);//用super调用父类的构造方法
        }
    }
    class bird extends Animalpark{//这是一个鸟类继承了动物乐园
        public bird(String name, String color, String food, int age) {
            super(name, color, food, age);//用super调用父类的构造方法
        }
    }
}

总结

这个Animalpark类就可以作为一个父类,然后狗类、猫类和鸟类继承这个类之后,就具有父类当中的属性和方法,子类就不会存在重复的代码,维护性也提高,代码也更加简洁,提高代码的复用性(复用性主要是可以多次使用,不用再多次写同样的代码)


继承的限制

继承支持单继承、多重继承、不同类继承同一个类,但是不支持多继承,看下图


final 关键字

通常继承不超过三层,而为了限制继承的层数,就可以使用 final 这个关键字

使用 final 关键字声明类,就是把类定义定义为最终类,不能被继承

使用 final 关键字声明方法,就是代表这个方法不能被重写

  • 13
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 14
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

shn!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值