(2018-04-03.Python从Zero到One)三、Python基础__3.8.1练习:设计类

上一篇文章为:→3.7.9静态方法和类方法

练习:设计类

1. 设计一个卖车的4S店,该怎样做呢?

# 定义车类
class Car(object):

    # 定义车的方法
    def move(self):
        print("---车在移动---")

    def stop(self):
        print("---停车---")

# 定义一个销售车的店类
class CarStore(object):

    def order(self):
        self.car = Car() #找一辆车
        self.car.move()
        self.car.stop()

说明

上面的4s店,只能销售那一种类型的车
如果这个是个销售北京现代品牌的车,比如伊兰特、索纳塔等,该怎样做呢?

2. 设计一个卖北京现代车的4S店

# 定义伊兰特车类
class YilanteCar(object):

    # 定义车的方法
    def move(self):
        print("---车在移动---")

    def stop(self):
        print("---停车---")

# 定义索纳塔车类
class SuonataCar(object):

    # 定义车的方法
    def move(self):
        print("---车在移动---")

    def stop(self):
        print("---停车---")

# 定义一个销售北京现代车的店类
class CarStore(object):

    def order(self, typeName):
        #根据客户的不同要求,生成不同的类型的车
        if typeName == "伊兰特":
            car = YilanteCar()
        elif typeName == "索纳塔":
            car = SuonataCar()
        return car

这样做,不太好,因为当北京现代又生产一种新类型的车时,又得在CarStore类中修改,有没有好的解决办法呢?


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

相关阅读更多精彩内容

  • 1.1面向对象 面向对象(object-oriented ;简称: OO)至今还没有统一的概念 我这里把它定义为:...
    TENG书阅读 3,644评论 0 0
  • 销售高手、精英团队培训教程 完整讲义 ...
    八戒369阅读 33,660评论 10 377
  • 在新加坡的最后两天,由于赶上农历新年的国定假日,大部分楼堂馆所关门歇业。于是我把时间用来在街上闲逛,浏览热带岛...
    TinaBai阅读 2,615评论 6 5
  • 最美不过老家,却只存在于我的记忆之中。 所以我更加怀念和想念,那时候单纯的人儿、那时候的旧人、那个时候的那方土地。...
    秋日几度阅读 4,314评论 3 5
  • 没有一个无赖认为自己是无赖,自知之明简直是一种美德——韦达 在关键对话中,我们一定要注意留意周围的环境,观察对话氛...
    肆意木阅读 4,697评论 0 0

友情链接更多精彩内容