美文网首页程序员小歌学Python
面向对象: Python 类的单继承与多继承

面向对象: Python 类的单继承与多继承

作者: 爱码小士 | 来源:发表于2018-09-15 10:25 被阅读13次

每种动物都有各自的特性,比如

老鼠会打洞

猫会爬树

鲨鱼会游泳

不同种类有不同的天性。而在程序员的思维中,动物是对象, 天性是这个类方法或者属性。

再延伸一下,比如Python是面向对象编程语言。有List、Str、Dict、Tuple等数据类型,这些数据类型也是对象,比如List类可以有count方法,我们可以通过count方法统计列表中各个元素的数量。

我们可以简单的将定义类理解成就是定义数据结构,同时给这种数据结构制定一些独特的属性或者方法。我们先看最简单的类,在这里我们定义了Point类

调用类之前我们要实例化,这个可以理解成神笔马良画的画,如果不将其搞活,永远是画。通过实例化,调用实例,画中对象就活了。

单继承

白马和黑马,都是马。

既然都是马,所以不论黑马白马都有马的特性,都可以奔跑。

所以我们可以定义一个基本的"马类",之后让"白马类"和"黑马类"继承自"马类"

像白马和黑马继承马,这就是单继承。因为只是继承了 一个基类。现在我们定义一个Circle类, 圆是由圆心和半径决定的,所以Circle会继承并使用Point的一些特性。

现在我们看看Circle

代码运行结果

多继承

多继承,顾名思义就是某个类继承了多个父类(基类)

继续

运行结果

现在已经有了Point、Size类,以及每个类中的String()方法。现在想构建正四方形Rectangle类。为了让Rectangle具有Point和Size的一些特性,需要让Rectangle继承Point和Size的一些特有的方法。

Rectangle继承了Point和Size两个类,使得Rectangle不用定义x、y、width、height。而且Rectangle的String方法可以直接调用Point和Size对象的String方法。

相关文章

  • 面向对象: Python 类的单继承与多继承

    每种动物都有各自的特性,比如 老鼠会打洞 猫会爬树 鲨鱼会游泳 不同种类有不同的天性。而在程序员的思维中,动物是对...

  • iOS 中几种多继承的实现方式

    单继承与多继承概念 继承是面向对象的基本特征之一,在具体语言的语法上设计有两种形式:多继承与单继承。 单继承 一个...

  • 12. 面向对象(继承/接口/抽象)

    [TOC] 面向对象 继承与派生 继承 什么是继承?继承是一种创建新的类的方式 在python中,新建的类可以继承...

  • iOS 多继承实现方式

    一、单继承与多继承概念 继承是面向对象的基本特征之一,在具体语言的语法上设计有两种形式:多继承与单继承。 1.单继...

  • 26.Python之面向对象的三大特性(继承、封装、多态)

    Python之面向对象的三大特性(继承、封装、多态) 继承与派生继承继承是一种新建类的方式,在Python中支持一...

  • Java 学习笔记(一)

    一、特性 Java是面向对象的编程语言,提供了类、接口、继承等(类只支持单继承,接口支持多继承)。结构中立,Jav...

  • GeekBand-OC继承与多态

    面向对象三大特性:封装、继承、多态面向对象三大特性 继承 在OC中,继承为单继承。即每个类只能有一个父类,子类自动...

  • python类的继承关系

    python类的继承关系面向对象三大特征:继承/封装/多态 继承的基本形式:成员变量继承,类方法继承例如:成员变量...

  • Python继承

    python可以分为单继承和多继承; 单继承: 单继承就是继承一个类的时候,现在我们定义一个Student类 然后...

  • 六、继承与多态 @GeekBand

    面向对象特征 封装 继承 单继承 继承了实例变量、属性、实例方法、类方法 所有类的根类:NSObject 成员复用...

网友评论

    本文标题:面向对象: Python 类的单继承与多继承

    本文链接:https://www.haomeiwen.com/subject/layzgftx.html