Python进阶知识:整理3 -> 设计模式(单例模式、工厂模式)
发布时间:2024年01月18日
1 单例模式
# 单例模式:确保一个类只有一个实例,并提供一个全局访问点。
class Singleton:
pass
st = Singleton()
"""
在其它文件中import, 使用上述类时,无论实例化多少对象,得到对象id都是一样的,相当于实例化一个对象
---> 节省内存;节省创建对象的开销
"""
2 工厂模式
# -- coding: utf-8 --
"""
当需要大量创建一个类的实例的时候,可以使用工厂模式:
即从原生的使用类的构造去创建对象的形式,迁移到基于工厂提供的方法去创建对象的形式
"""
"""
优点: 1.大批量创建对象的时候有统一的入口,易于代码的维护
2.当发生修改,仅需要修改工厂类的创建方法即可
3.符合现实世界的模式,即有工厂来制作产品(对象)
"""
class Person:
pass
class Worker(Person):
pass
class Student(Person):
pass
class Teacher(Person):
pass
class PersonFactory:
def get_person(self, p_type):
if p_type == 'worker':
return Worker()
elif p_type == 'student':
return Student()
elif p_type == 'teacher':
return Teacher()
else:
return None
pf = PersonFactory()
worker = pf.get_person('worker')
student = pf.get_person('student')
teacher = pf.get_person('teacher')
文章来源:https://blog.csdn.net/m0_61495539/article/details/135653151
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:chenni525@qq.com进行投诉反馈,一经查实,立即删除!