美文网首页
python自学计划-面向对象-16

python自学计划-面向对象-16

作者: 你缺少想象力 | 来源:发表于2018-12-12 15:43 被阅读0次

面向对象跟Java还算很像,不过居然有多继承

整个代码直接贴上:

class Human:
    """人类"""# 这是类注释,居然写在下面的,不习惯

    name = ''
    """名字"""

    def getName(self):
        """获取名字"""
        return self.name # 访问类属性

    def __init__(self, name):
        """构造方法"""
        self.name = name


# 继承
class Student(Human):
    """学生类"""

    id = 0
    """学号"""

    def __init__(self, sid, name):
        """子类构造方法"""
        super().__init__(name)  # 调用父类的构造方法
        self.id = sid

    def getID(self):
        return self.id


class Programmer:
    """程序员类"""

    hairCount = 3000

    def __init__(self, count):
        # 方法重写
        self.hairCount = count

    def stayUpLate(self):
        print('熬夜')
        pass

    def getHairCount(self):
        return self.hairCount
        pass


# 多继承,如果没有写构造方法,会调用第一个父类的构造方法
class PSman(Student, Programmer):

    def getHairCount(self):
        return self.hairCount
        pass

    def learnCoding(self):
        print('学习敲代码')


# 继承关系,左边是父类,右边是子类
# human->student->PSman
# Programmer->PSman
print('------Human类------')
print('------Human类------')
human = Human('李四')
print('human.getName()', human.getName())

print('------Student类------')
print('------Student类------')
student = Student(12, 'Tom')
print('student.getName()', student.getName())
print('student.getID()', student.getID())

print('------PSman类------')
print('------PSman类------')
p_sman = PSman(67, 'proA')
print('p_sman.getName()', p_sman.getName())
print('p_sman.getHairCount()', p_sman.getHairCount())
print('p_sman.getID()', p_sman.getID())
p_sman.stayUpLate()
p_sman.learnCoding()

运行结果:

------Human类------
------Human类------
human.getName() 李四
------Student类------
------Student类------
student.getName() Tom
student.getID() 12
------PSman类------
------PSman类------
p_sman.getName() proA
p_sman.getHairCount() 3000
p_sman.getID() 67
熬夜
学习敲代码

相关文章

  • python自学计划-面向对象-16

    面向对象跟Java还算很像,不过居然有多继承 整个代码直接贴上: 运行结果:

  • python面向对象学习笔记-01

    学习笔记 # 0,OOP-Python面向对象 - Python的面向对象 - 面向对象编程 - 基础 -...

  • Python 面向对象编程

    Python 面向对象编程(一) Python 面向对象编程(一) 虽然Python是解释性语言,但是它是面向对象...

  • python基础-02

    Python 面向对象 python是一门面向对象的语言 Python内置类属性 python对象销毁(垃圾回收)...

  • 王艳华Pythonday03

    Python的面向对象 Java 面向对象 继承

  • Python OOP-1

    0. OOP-Python面向对象 Python面向对象 面向对象编程基础公有私有继承组合,Mixin 魔法函数魔...

  • PHP自学计划-面向对象-18

    PHP的面向对象,几乎和Java一模一样,甚至就是一样的例子: 运行结果: 要注意一点的是:PHP的类有构造方法和...

  • 营销比赛二三事

    Python面向对象编程三大特性调研 Python面向对象之封装 在Python中,没有类似 private 之类...

  • Python进阶1

    Python中一切皆对象 引言 Java语言也是面向对象的语言,但是Python要更加彻底 Python的面向对象...

  • Python精简入门学习(十四)

    Python精简入门学习之面向对象(oop) -面向对象 -类和对象

网友评论

      本文标题:python自学计划-面向对象-16

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