一、接口类(面向对象开发的思想和规范)的多继承

需求:

定义一个tiger类:会走,会游

定义一个hawk类:会走,会飞

定义一个swan类:会走,会游,会飞

(a)如果像以下代码的方式,则不能够满足以上的需求,只有swan的实例化才是正确的,其他两个tiger类和hawk类则不能满足

(b)而以下代码确切定义每一个类,每个类的属性都都在类里面存在,这样写虽然可以满足前面的需求,但是不好的地方就是,重复的方法太多,显得累赘

©以下代码使用了接口类的多继承,虽然代码看起来还是和(b)一样有点多,但是它起到了一个规范的作用,不容易出错,出错了了也更容易找到出错的地方,一出现错误,就说明,子类中不存在与父类中同名的方法和函数,然后做出对应的修改即可

从(a)和©接口类的多继承的代码也可以比较容易理解在使用接口类常用的一个原则:

接口隔离原则:使用多个专门的接口(,多个规范,多个父类),而不使用单一的总接口(单一的父类),即客户端不应该依赖那些不需要的接口

二、抽象类的单继承

如果说类是从一堆对象中抽取相同的内容而来,那么抽象类就是从一堆类中抽取相同的内容而来的,内容包括数据属性和函数属性,以下用一个例子来说明什么是抽象类

对于操作系统来说,一切皆是文件,利用abc模块可以实现抽象类

三、接口类和抽象类的小结

无论是接口类还是抽象类都是面向对象的开发规范,都不能实例化

(1)Java:Java里面所有的类都是单继承,所以抽象类完美的解决了单继承需求中的规范问题;但是对于多继承的需求,Java本身语法不支持,所以创建了接口interface这个概念来解决多继承问题

(2)python:由于python也想用这种类似的设计模式,所以模仿Java中接口类和抽象类的概念,只不过概念比较模糊。python中没有接口类,但是它本身支持的多继承并用class可以实现和接口类一样的功能效果;而python中支持抽象类,即单继承的方法就可以实现抽象类的功能作用

java接口构建英雄属性_Python接口类的多继承以及抽象类的单继承相关推荐

  1. 接口类的多继承以及抽象类的单继承

    接口类的多继承以及抽象类的单继承 一.接口类(面向对象开发的思想和规范)的多继承 需求: 定义一个tiger类:会走,会游 定义一个hawk类:会走,会飞 定义一个swan类:会走,会游,会飞 (a) ...

  2. 接口可以继承抽象类吗_Python接口类的多继承以及抽象类的单继承

    一.接口类(面向对象开发的思想和规范)的多继承 需求: 定义一个tiger类:会走,会游 定义一个hawk类:会走,会飞 定义一个swan类:会走,会游,会飞 (a)如果像以下代码的方式,则不能够满足 ...

  3. java接口构建英雄属性_Java开发学习心得(三):项目结构

    3 项目结构 经过前面一系列学习,差不多对Java的开发过程有了一定的了解,为了能保持一个良好的项目结构,考虑到接下来要进行开发,还需要学习一下Java的项目结构 下面以两个项目结构为参照 图1 图2 ...

  4. java写一个外网访问的接口_【JAVA基础】一个案例搞懂类、对象、重载、封装、继承、多态、覆盖、抽象和接口概念及区别(中篇)...

    0 前言 初学JAVA时,总会对一些概念一知半解,相互混淆,不明其设计的用意,如类.对象.重载.封装.继承.多态.覆盖.抽象类.接口概念.为便于理解和巩固,本文将基于一个案例及其变形,展现各个概念的定 ...

  5. python接口编程的好处_python接口自动化测试

    mock简介 py3已将mock集成到unittest库中 为的就是更好的进行单元测试 简单理解,模拟接口返回参数 通俗易懂,直接修改接口返回参数的值 mock作用 解决依赖问题,达到解耦作用 当我们 ...

  6. python接口自动化测试面试题_Python 接口自动化测试实战

    Python接口自动化测试实战 简介 本课程主要围绕Python相关库再服务端接口自动化测试中的应用展开介绍,重点讲解接口自动化基础.编写接口自动化脚本.框架原理.项目实战,此外还扩展介绍多用例管理与 ...

  7. python做接口自动化测试仪器经销商_Python接口自动化测试的实现

    接口测试的方式有很多,比如可以用工具(jmeter,postman)之类,也可以自己写代码进行接口测试,工具的使用相对来说都比较简单,重点是要搞清楚项目接口的协议是什么,然后有针对性的进行选择,甚至当 ...

  8. python接口自动化是什么_Python接口自动化测试(一)什么是接口?

    接口:API(Application Programming Interface)即应用程序接口.你可以认为API是一个软件组件,或是一个Web服务与外界进行交互的接口. 1.从功能层面上 可以将接口 ...

  9. python调用api接口获取天气数据_python 接口实战--天气API

    1.接口地址: 网页请求: 将结果拷贝到bjson中,格式化为json的格式. 在python中实现天气测试,代码实现. import requests    导入requests库 from url ...

最新文章

  1. 为什么判断 n 是否为质数只需除到开平方根就行了?(直接证明)
  2. Pxe+Kickstart批量网络安装操作系统
  3. 数据库的嵌套查询和统计查询
  4. 使用WebRTC实现电脑与手机通过浏览器进行视频通话
  5. Code Review
  6. 【Ngrok】小米球实践-内网穿透【映射本地到外网访问】
  7. mysql字符校对规则作用_(2)MySQL字符集及校对规则的理解
  8. 魏俊妮《人力资源体系搭建专家》
  9. 利用PS批量添加文件名到图片中
  10. 异步bus交互(一)— 两级DFF同步器
  11. 设置Cookie的生命周期
  12. Lombok 的作者,成功讨伐 IntelliJ IDEA!
  13. 推荐 8 个高质量的公众号
  14. office web apps安装部署 Win 2008 安装
  15. 存储芯片涨价:助芯片制造商美光科技业绩连超预期
  16. 简明量子力学的学习 量子计算 笔记量子概念
  17. python获取网页数据后写入mysql_HTTP协议与使用Python获取数据并写入MySQL
  18. 团簇结构的Fe3O4/Cystamine四氧化三铁纳米颗粒|PDA包裹四氧化三铁磁性纳米颗粒
  19. 10kV线路保护的整定
  20. Type-c接口各功能简介以及方案分享

热门文章

  1. php通过实现excel导入,php实现excel导入数据
  2. array python 交集_Python基础(二)——列表和元组
  3. docker版本包 乌班图_Ubuntu安装Docker方式一:软件包安装
  4. 【51单片机快速入门指南】4.1: I2C 与 AT24C02 (EEPROM) 的跨页连续读写
  5. Java 基础——类的加载
  6. cnpm与npm的区别
  7. 带可变参数的宏函数和普通函数实现
  8. vue cli3 兼容ie8以上浏览器,前端兼容;解决ie浏览器下白屏问题
  9. 重学java基础第二课:java和python分析
  10. [html] 页面中怎么嵌入Flash?有哪些方法?写出来