专栏首页学习笔记持续记录中...Java基础:一、继承(6)

Java基础:一、继承(6)

继承:当继承现有类型时,也就创造了新的类型。这个类型不仅包括了现有类型的所有成员(尽管private成员被隐藏了起来,并且不可访问),而且更重要的是它复制了基类的方法。也就是说,所有可以发送给基类对象的消息同时也可以发送给导出类对象。

导出类的对象不仅与基类拥有相同的类型,而且还拥有相同的行为,这样做没有什么特别意义。有两种方法可以使基类与导出类产生差异。 第一种方法:直接在导出类中添加新方法,这些新方法并不是基类接口的一部分。 第二种方法:覆盖:要想覆盖某个方法,可以直接在导出类中创建该类的新定义即可

is-a(是一个)关系继承中只覆盖基类的方法,而不添加基类中没有的新方法,导出类和基类是完全相同的类型,并且具有完全相同的接口,判断是否继承,就是要确定是否可以用is-a来描述类之间的关系,并使之具有实际意义。

is-like-a(像是一个)关系在导出类型中添加新的接口元素。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • MyBatis —— 主配置文件中的常见标签使用

    在下面的例子中,由于sql中的字段与bean的属性不对应,导致查询结果中的返回值为null。

    桑鱼
  • Spring对JDBC的支持(11)

    由于每次使用都创建一个JdbcTemplate的新实例,这样的做法效率低下,JdbcTemplate类被设计称为线程安全的,可以可以在IOC容器中声明它的单个实...

    桑鱼
  • 解决异常:eclipse项目中XML中警告:No grammar constraints (DTD or XML Schema)

    桑鱼
  • JS创建类的两种常用方式

    IT故事会
  • android AlarmManager讲解

    Android系统闹钟定时功能框架,总体来说就是用数据库存储定时数据,有一个状态管理器来统一管理这些定时状态的触发和更新。在Andriod系统中实现定时功能,...

    xiangzhihong
  • python中关于空的说法

    None他既不是0也不False也不是空的序列也不是空的字典,但是他的布尔类型为False

    小小咸鱼YwY
  • RxSwift介绍(一)——RxSwift初探

    之前介绍了RAC在Objective-C环境下RACSignal信号订阅使用流程、宏定义以及各种信号的操作使用。作为函数式响应编程的代表,就不得不提RxSwif...

    我只不过是出来写写代码
  • Docker入门实践指南

    一、明确适用场景! Docker不是万灵药,有它自己的适用场景。在你得到这些好处的同时,也是要付出相应代价的。 对开发来说,可以快速搭建起一个测试环境,比传...

    陌涛
  • Python 炫技操作(03):连接列表的八种方法

    Python 语言里有许多(而且是越来越多)的高级特性,是 Python 发烧友们非常喜欢的。在这些人的眼里,能够写出那些一般开发者看不懂的高级特性,就是高手,...

    朱小五
  • 原创译文|曾经被预言要毁灭人类的技术,现在如何造福人类呢?

    10月13日在匹兹堡举办的白宫前沿峰会上,专家表示人工智能不但不会导致人类垮台,而且会帮助人们更好地工作。人工智能不仅可以辅助医生诊断脓毒症,还可以帮助科学家...

    灯塔大数据

扫码关注云+社区

领取腾讯云代金券