zoukankan      html  css  js  c++  java
  • python入门 类的继承和聚合(五)



    继承

    class Rocket:
        def __init__(self, name, distance):
            self.name = name
            self.distance = distance
    
        def launch(self):
            return "%s has reached %s" % (self.name, self.distance)
    
    
    class MarsRover(Rocket): # inheriting from the base class
        def __init__(self, name, distance, maker):
            Rocket.__init__(self, name, distance)
            self.maker = maker
    
        def get_maker(self):
            return "%s Launched by %s" % (self.name, self.maker)
    
    
    if __name__ == "__main__":
        x = Rocket("simple rocket", "till stratosphere")
        y = MarsRover("mars_rover", "till Mars", "ISRO")
        print(x.launch())
        print(y.launch())
        print(y.get_maker())
    
    simple rocket has reached till stratosphere
    mars_rover has reached till Mars
    mars_rover Launched by ISRO
    

    聚合

    class MarsRoverComp():
        def __init__(self, name, distance, maker):
            self.rocket = Rocket(name, distance) # instantiating the base
            self.maker = maker
    
        def launch(self):
            self.rocket.launch()
    
        def get_maker(self):
            return "%s Launched by %s" % (self.rocket.name, self.maker)
    
    
    if __name__ == "__main__":
        z = MarsRover("mars_rover2", "till Mars", "ISRO")
        print(z.launch())
        print(z.get_maker())
    
    mars_rover_comp has reached till Mars
    mars_rover_comp Launched by ISRO
    



  • 相关阅读:
    登录功能实现
    JavaScript中的apply()方法和call()方法使用介绍
    导致JSON无法解析的问题
    git
    Xcode 与 macOS 系统版本的兼容问题
    创建多个Target
    验证合法身份证
    Xcode 6创建预编译头文件.pch
    About In-App Purchase
    Xcode 6制作通用framework库
  • 原文地址:https://www.cnblogs.com/wangjiale1024/p/10311399.html
Copyright © 2011-2022 走看看