定义一个创造汽车的工厂类

简介: # 定义奔驰车类class BenchiCar(object): # 定义车的方法 def move(self): print('---奔驰车在移动---') def stop(self): print('---奔驰车停车了---')#...
# 定义奔驰车类
class BenchiCar(object):
    # 定义车的方法
    def move(self):
        print('---奔驰车在移动---')
    def stop(self):
        print('---奔驰车停车了---')

# 定义宝马车类
class BMWCar(object):
    # 定义车的方法
    def move(self):
        print('---宝马车在移动---')

    def stop(self):
        print('---宝马车停车了---')

# 定义一个类,根据具体订单生产不同的汽车对象
class CarFactory(object):
    def creatCar(self, typeName):
        if typeName == '奔驰':
            car = BenchiCar()  # 找一辆车
        elif typeName == '宝马':
            car = BMWCar()  # 找一辆车
        return car


# 定义一个销售北京现代车的店类
class CarStore(object):
    def __init__(self):
        # 设置指定的汽车工厂
        self.carFactory = CarFactory()
    def order(self, typeName):
        # 让工厂根据类型,生产一辆汽车
        car = self.carFactory.creatCar(typeName)
        return car

pinpai_store = CarStore()
my_car = pinpai_store.order('奔驰')
my_car.move()
my_car.stop()

# 此种解决方式被称作简单工厂模式
# 工厂函数、工厂类对具体的生成环节进行了封装,这样有利于代码的后需扩展
# 即把功能划分的更具体,4s店只负责销售,汽车厂只负责制造

  

                                                                   -------  知识无价,汗水有情,如需搬运请注明出处,谢谢!

目录
相关文章
|
24天前
|
数据采集 供应链 监控
一文看懂:MES定义和功能是什么,以及在数字化工厂的应用
MES是制造企业信息化的关键,适应个性化和敏捷制造需求,助力生产精益管理。作为数字化与智能化的核心,MES系统在数字化工厂中发挥重要作用,实现实时监控、资源优化和生产流程自动化。系统功能包括一站式生产业务流程、生产进度追踪、灵活功能修改、数据可视化和移动端报工。发展历程从数据采集到智能制造,现正向MOM发展,整合更多环节,强调数据实时性、智能化、灵活性和整体优化,以提升制造业效率和竞争力。
|
1月前
|
XML JSON Java
作为所有类的顶层父类,没想到Object的魔力如此之大!
在上一篇博文中我们提到了Java面向对象的四大特性,其中谈及“抽象”特性时做了一个引子,引出今天的主人公Object,作为所有类的顶级父类,Object被视为是James.Gosling的哲学思考,它高度概括了事务的自然与社会行为。
59 13
|
1月前
|
存储 编译器 C语言
C++的面向诗篇:类的叙事与对象的旋律
C++的面向诗篇:类的叙事与对象的旋律
27 0
|
10月前
|
设计模式 Java 数据库连接
Java设计模式之抽象工厂模式:创造多个相关对象
在软件开发领域,设计模式是一种用于解决常见问题的实践方法,它提供了一些被验证过的指导原则。抽象工厂模式是创建型设计模式中的佼佼者,可以帮助我们在处理多个相关对象的创建时保持一致性。让我们深入了解抽象工厂模式的内涵以及它如何在Java中应用。
71 0
|
11月前
想象的重要性(抽象工厂)
想象的重要性(抽象工厂)
37 0
|
1月前
|
JavaScript 前端开发 Java
构造器魔法:点燃对象的初始力量
构造器魔法:点燃对象的初始力量
|
9月前
|
供应链
智慧工厂概念
智慧工厂概念
107 0
|
11月前
|
Java
继承-被透明化的认知
前段时间和领导交流,被问到:java中什么是继承?继承在编译过程的代码体现是什么?继承在运行时的代码体现是什么?
|
11月前
|
设计模式 算法 搜索推荐
工厂+策略模式:让生活更便捷的秘密武器
在日常生活中,我们经常面临选择的困扰,比如选择适合自己口味的咖啡,选择合适的手机品牌等等。而工厂+策略模式就是一种能够帮助我们做出更好选择的秘密武器。本文将以生活化的语言,介绍工厂+策略模式的意义,并举例说明其在日常工作中的应用场景。
105 0
|
监控 JavaScript 数据可视化
传统工厂该如何布局数字化?数字化工厂建设标准
近年来很多鼓励企业数字化转型的政策陆续出台,在一定程度上帮助企业减轻数字化转型的成本压力。但是企业数字化转型依然面临着诸多的问题与挑战。主要还是因为大部分企业,特别是制造型企业,数字化进程还在探索阶段,资金、人才、技术等方面都没有对应的配备,导致数字化转型进展并不顺利。