面向对象(继承的思想)

*继承的思想和实际用法
1.知道继承的好处以及其弊端
2.知道继承中成员的访问特点

继承

继承时首先咱要了解什么是继承
继承主要为子类继承父类的一些属性:比如其定义的成员变量和构造方法,具体如下:
请添加图片描述

请添加图片描述
比如上述,爹类和儿子类都有对应的name和age两个成员变量,其对应的get/set方法,他们也是相同的,这两个类有相同的方法,具有相同的特征.请添加图片描述
如果将其提取出来,就会变成以上的样子,将其相同的特征用同一个类表示出来,只不过没给出类名而已,而其与爹类和儿子类有关系,而这个关系就是要将的继承.

**可以使得子类具有父类的属性和方法,还可以在子类中重新定义,追加属性和方法。
知道了,什么是继承后,我们来说一下,继承的格式:
继承的格式:

  • 格式:public class 子类名 extends 父类名 { }

  • 范例:public class Zi extends Fu { }

  • Fu:是父类,也被称为基类、超类

  • Zi:是子类,也被称为派生类* 斜体样式*
    请添加图片描述
    请添加图片描述
    **继承中子类的特点:

  • 子类可以有父类的内容

  • 子类还可以有自己特有的内容**

  • 继承的好处和弊端

  • 首先,我们来说一下继承的好处:

  • 提高了代码的复用性(多个类相同的成员可以放到同一个类中)

  • 提高了代码的维护性(如果方法的代码需要修改,修改一处即可)

继承的第一个好处是提高了代码的复用性。怎么来理解呢,我们来说一下:

多个类相同的成员可以放到同一个类中,这一个类我们就可以设计为父类,这多个类我们就可以设计为子类。相同的内容放到了父类中,我们就可以简化这多个子类的代码,而相同的代码就可以

被多个子类使用,将来再来一个子类的时候,它也可以通过继承拥有父类的内容。所以,我们说继承提高了代码的复用性。

继承的第二个好处是提高了代码的维护性。我们也来说一下:

如果我们有多个类,它们有相同的方法,在使用继承之前,如果这个相同的方法需要进行修改,那么我们就需要修改多个类中的代码。而在使用继承后,由于我们把相同的代码提取到了父类中,

所以,在需要修改的时候,我们只需要修改一处即可。所以,我们说继承提高了代码的维护性。

这两个就是我们要讲解的继承的好处:提高了代码的复用性,提高了代码的维护性。

讲解完继承的好处后,我们来说一下继承的弊端:

  • 继承让类与类之间产生了关系,类的耦合性增强了,当父类发生变化时子类实现也不得不跟着变化,削弱了子类的独立性

所以,我们说,在程序设计中,我们要好好的考虑该不该使用继承。

那么,我们什么时候该使用继承呢?这里给大家讲解一个最简单的原则。

来,我们来说一下什么时候使用继承:

  • 继承体现的关系:is a
  • 假设法:我有两个类A和B,如果他们满足A是B的一种,或者B是A的一种,就说明他们存在继承关系,这个时候就可以考虑使用继承来体现,否则就不能滥用继承
  • 举例:苹果和水果,猫和动物,猫和狗

要讲解这个内容,我们先要告诉大家的是:继承体现的是is a的关系,也就是什么是什么的一种,我们采用假设法就可以用来判断两个类是否存在继承关系。

来,我们举例说明一下:苹果和水果,由于苹果是水果的一种,所以,我们可以把水果设计为父类,苹果设计为子类。

我们再来说,猫和动物,由于猫是动物的一种,所以,我们可以把动物设计为父类,猫设计为子类。

最后,我们再来说猫和狗,猫是狗的一种,或者狗是猫的一种,这都说不通,所以,它们之间不存在继承关系,就不应该采用继承关系来设计猫类和狗类。

继承中成员访问特点

在子类方法中访问一个变量:

  • 子类局部范围找
  • 子类成员范围找
  • 父类成员范围找
  • 如果都没有就报错(不考虑父亲的父亲…)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值