Python 面向对象(练习题)

1,定义发动机类Motor、底盘类Chassis、座椅类Seat,车辆外壳类Shell,并使用组合关系定义汽车类。其他要求如下:
定义汽车的run()方法,里面需要调用Motor类的work()方法,也需要调用座椅类Seat的work()方法,也需要调用底盘类Chassis的work()方法

"""
定义发动机类Motor、底盘类Chassis、座椅类Seat,车辆外壳类Shell,并使用组合关系
定义汽车类。其他要求如下:
定义汽车的run()方法,里面需要调用Motor类的work()方法,也需要调用座椅类Seat的
work()方法,也需要调用底盘类Chassis的work()方法
"""
class Motor:
    """汽车发动机"""
    def motor_work(self):
        print("正在制造发动机")

class Chassis:
    """底盘"""
    def chassis_work(self):
        print("正在制造底盘")

class Seat:
    """座椅"""
    def seat_work(self):
        print("正在制造座椅")

class Shell:
    """车辆外壳"""
    pass

class Car():   # 使用组合关系定义汽车类
    def __init__(self,motor, chassis, seat):
        self.motor = motor
        self.chassis = chassis
        self.seat = seat
    def run(self):
        car.motor.motor_work()
        car.chassis.chassis_work()
        car.seat.seat_work()

m = Motor()
c = Chassis()
s = Seat()
car = Car(m, c, s)
car.run()

要点:

组合

结婚就是组合。两人组合后,可以复用对方的属性和方法!

除了继承,“组合”也能实现代码的复用!“组合”核心是“将父类对象作为子

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值