classmethod,staticmethod

__author__ = 'bruce'

class Base(object):

         addr = 'shanghai'

         def __init__(self,name):

               self.name = name

        def get_name(self):

              return self.name

        @classmethod

        def get_addr(cls):

              return cls.addr

        @staticmethod

        def get_addr_second(name):

              return name == 'zhanglinpeng'

class NewOne(Base):

         def __init__(self,name,phone):

               self.phone = phone

               super(NewOne,self).__init__(name)

         def get_phone(self):

               return self.phone

if __name__ == '__main__':

     newone = NewOne('zhanglinpeng','18000000000')

     print newone.get_name()                      # instance method

     print Base.get_name(newone)

     print newone.get_addr()                      # classmethod

     print Base.get_addr()

     print newone.get_addr_second('zhanglinpeng')  # staticmethoed

     print Base.get_addr_second('fengxiaoting')

     print newone.get_phone()

     print NewOne.get_phone(newone)


run result:

zhanglinpeng

zhanglinpeng

shanghai

shanghai

True

False

18000000000

18000000000

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 基础1.r''表示''内部的字符串默认不转义2.'''...'''表示多行内容3. 布尔值:True、False(...
    neo已经被使用阅读 5,723评论 0 5
  • 1.1面向对象 面向对象(object-oriented ;简称: OO)至今还没有统一的概念 我这里把它定义为:...
    TENG书阅读 3,641评论 0 0
  • 20- 枚举,枚举原始值,枚举相关值,switch提取枚举关联值 Swift枚举: Swift中的枚举比OC中的枚...
    iOS_恒仔阅读 6,876评论 1 6
  • 全世界都知道这句英文“made in Japan”。全世界的制造业都知道日本有个丰田汽车,很多了解丰田的人都知道丰...
    颖秋阅读 2,649评论 0 2
  • 鸿宾哥比我大十七岁,过了年就五十多岁了,我们两个是忘年交。已经想不起来怎么就成了好朋友了,反正是只要我回老家我们...
    舜子的简单日记阅读 3,627评论 0 2

友情链接更多精彩内容