zoukankan      html  css  js  c++  java
  • 类的继承

    继承是相对两个类而言的父子关系,子类继承了父类的所有公有属性和方法,继承的好处是能够实现代码重用

    #!/usr/bin/env python
    #-*- coding:utf-8 -*-
    
    class People(object):
        def __init__(self):
            self.name = 'Tom'
            self.age = 23
    
        def talk(self):
            print('My name is %s' % self.name)
            print('My age is %s' % self.age)
    
    class Chinese(People):    # 表示Chinese这个类继承了People这个类的公有属性和方法,括号里是父类
        pass
    
    if __name__ == '__main__':    # 实例化一个对象,可以通过子类直接使用父类的方法
        cn = Chinese()
        cn.talk()


    如果父类定义的__init__方法含有参数,子类必须调用父类的__init__方法,否则会报错:

    #!/usr/bin/env python
    #-*- coding:utf-8 -*-
    
    class People(object):
        def __init__(self, name, age):    # 这里定义的__init__方法含有参数
            self.name = name
            self.age = age
    
        def talk(self):
            print('My name is %s' % self.name)
            print('My age is %s' % self.age)
    
    class Chinese(People):    
        def __init__(self):
            People.__init__(self, 'Tom', 23)            # 在继承的时候必须调用父类的__init__方法
        ### super(Chinese, self).__init__('Tom', 23)    # 也可以通过super()函数去继承父类(可选)
    
    if __name__ == '__main__':
        cn = Chinese()
        cn.talk()

        

        

  • 相关阅读:
    android studio 提示翻译
    mysql-You can’t specify target table for update in FROM clause错误
    echarts-案例
    maven-过滤不打入包的文件
    neo4j关闭和开启密码访问权限
    linux-crontab定时任务
    neo4j-备份、恢复
    windows和linux执行class
    mvn-打jar运行包(含环境变量配置)
    mysql-netstat
  • 原文地址:https://www.cnblogs.com/pzk7788/p/10279825.html
Copyright © 2011-2022 走看看