zoukankan      html  css  js  c++  java
  • python 基础 5.3 类的重写

    一. 类的重写
    只需要重新定义类的属性(变量),就是累的重写了
    示例:重新定义类grandson的 name属性
     
    #/usr/bin/python
    #coding=utf-8
    #@Time :2017/11/6 15:23
    #@Auther :liuzhenchuan
    #@File   :类的重写.py
     
    class parent(object):
        name = 'parent'
        sex = 'F'
        coller = 'yellow'
        language = 'chinese'
        def __init__(self):
            print 'my name is {0}'.format(self.name)
        def get_sex(self):
            return self.name
    a = parent()
    a.get_sex()
    print '#'*15
     
    class child(object):
        name = 'child'
        coller = 'yellow'
        def __init__(self):
            print 'my name is {0}'.format(self.name)
        def get_coller(self):
            return self.coller
    b = child()
    print b.get_coller()
    print '#'*15
     
    class grandson(parent,child):
        name = 'grandson'
        def __init__(self):
            print 'my name is {0}'.format(self.name)
        def get_coller(self):
            return self.coller
        def get_language(self):
            return self.language
    #类的重写,只需要重新定义变量,直接打印
        def get_name(self):
            print 'my name is xiaoming'
    c = grandson()
    print c.get_coller()
    print c.get_language()
    c.get_name()
     
     
    二. __init__ 是每个类的默认方法,如果子类想继承父类的__init__ 方法,需要用supper(子类,self)。子类把父类方法重写的时候,会默认忽略父类中的 return
     
    格式:子类想继承__init__
    supper(子类名称,self).__init__(有参数就跟参数)
    print '$$$$$$$ '   //使用supper函数,会忽略父类中的return,直接执行子类中 
                                  supper下的一些方法逻辑,所以直接用print 打出来
     
    格式: 子类想继承父类中的其他方法
    supper(子类名称,self).父类中的方法    //没参数就跟父类中的方法名
    print '#######'     // 使用supper函数,会忽略父类中的return
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
  • 相关阅读:
    Item02.多态 Polymorphism
    使用Singleton需要考虑内存释放
    Item08. 多级指针(Pointers to Pointers)
    Item01: 数据提取(Data Abstraction)
    Item 05. 引用(References Are Aliases, Not Pointers)
    华为3Com Quidway 2116SI
    DLink DES1226G 一款不错的中端交换机
    郁闷
    一些VLAN学习资料
    有个好心情才会有好的状态
  • 原文地址:https://www.cnblogs.com/lzcys8868/p/7797493.html
Copyright © 2011-2022 走看看