zoukankan      html  css  js  c++  java
  • python面向对象—继承&组合

    继承:一般出现在子类和父类之间,子类“属于”或者称之为“是”父类,子类具有父类的所有属性

    如果没有指定基类,python的类会默认继承object类,object是所有python类的基类,它提供了一些常见方法(如__str__)的实现

    组合:对象拥有另一个对象的属性。对象定义一个属性指向另一个对象的内存地址

    代码实现:

    (继承):

    class Creature:
        def __init__(self,name,age):
            self.name = name
            self.age = age
    
    
    class People(Creature):
        def __init__(self,name,age,sex,work,factory):
            super().__init__(name,age)  #重用父类的属性
            self.sex = sex
            self.work = work
            self.factory = factory
    
        def job(self):
            print('%s work in %s as a %s'%(self.name,self.factory,self.work))
    
    ryan = People('ryan',28,'man','yw','BZT')
    ryan.job()

    (组合):

    class Company:
        def __init__(self,factory_name,work):
            self.factory_name = factory_name
            self.work = work
    
    
    class People:
        def __init__(self,name,age,sex):
            self.name = name
            self.age = age
            self.sex = sex
    
        def job(self,comp):
            print('%s work in %s as %s '%(self.name,comp.factory_name,comp.work))
    
    
    ryan = People('ryan',28,'man')
    BaizhiTong = Company('BZT','yw')
    ryan.works = BaizhiTong
    print(ryan.works.factory_name)
  • 相关阅读:
    WebView与 JS 交互方式
    ES6常用知识点
    Flash Builder 破解与开发环境配置
    如何修改默认浏览器
    基本数据类型和常用内建对象
    VS 2010 使用技巧
    javascript之事件驱动编程的几个基本概念
    javascript笔记之DHTML基础
    浏览器对象模型
    开发心得记录
  • 原文地址:https://www.cnblogs.com/thanos-ryan/p/13562915.html
Copyright © 2011-2022 走看看