当前位置: 首页 > news >正文

站外推广网站白云网站建设公

站外推广网站,白云网站建设公,企业网站建设方案书 备案,培训网页设计机构工厂设计模式属于创意设计模式范畴。 创建设计模式提供了许多对象创建技术#xff0c;从而提高了代码的可重用性和灵活性。 工厂方法是一种创建对象而不指定其具体类的方法。 它以单个父类#xff08;抽象类或接口#xff09;定义对象的通用结构#xff0c;而子类提供实例…工厂设计模式属于创意设计模式范畴。 创建设计模式提供了许多对象创建技术从而提高了代码的可重用性和灵活性。 工厂方法是一种创建对象而不指定其具体类的方法。 它以单个父类抽象类或接口定义对象的通用结构而子类提供实例化对象的完整实现的方式提供抽象和多态性。 在Python中实现工厂方法 在下面的代码中abc是一个代表抽象基类的包我们从中导入了ABCMeta用于声明抽象类和abstractstaticmethod用于声明抽象静态方法。 我们定义了一个名为 Person 的通用抽象基类具有一个抽象静态方法 person_type()。 具体的派生类将实现此方法。 然后我们从 Person 定义了两个派生类分别名为 Student 和 Teacher。 这两个类都根据需要实现了抽象静态方法 person_type()。 我们声明了工厂方法 PersonFactory 负责在运行时根据用户的输入选择创建 Person 的对象学生或教师。 该类有一个静态方法 build_person()它将 person 类型作为参数并使用其名称学生姓名或教师姓名构造所需的对象。 示例代码 #Python 3.x from abc import ABCMeta, abstractstaticmethod class Person(metaclassABCMeta):abstractstaticmethoddef person_type():pass class Student(Person):def __init__(self, name):self.namenameprint(Student Created:, name)def person_type(self):print(Student) class Teacher(Person):def __init__(self, name):self.namenameprint(Teacher Created:, name)def person_type(self):print(Teacher) class PersonFactory:staticmethoddef build_person(person_type):if person_type Student:nameinput(Enter Students name: )return Student(name)if person_type Teacher:nameinput(Enter Teachers name: )return Teacher(name) if __name__ __main__:choiceinput(Enter the Person type to create: )objPersonFactory.build_person(choice)obj.person_type()输出: #Python 3.x Enter the Person type to create: Teacher Enter Teachers name: Jhon Teacher Created: Jhon TeacherPython 中工厂方法的优点 它促进代码中的松散耦合。可以很容易地修改代码以实例化具有稍微不同特征的新对象而不会干扰当前代码。它促进代码中的抽象和多态性。 Python 中工厂方法的缺点 我们只能在属于同一类别且特征略有不同的对象时使用它。工厂设计模式增加了代码中类的总数。它降低了代码的可读性因为由于抽象而隐藏了实现。
http://www.zqtcl.cn/news/156846/

相关文章:

  • 书籍网站建设规划书app开发公司价格表
  • 小程序网站模板住建个人证书查询网
  • 西安 美院 网站建设贵阳美丽乡村建设网站
  • 平顶山市哪里有做网站的wordpress应用教程
  • 制作企业网站的实训报告医院网站设计模板
  • 要做网站照片怎么处理广东外发加工网
  • 做国际网站每年要多少钱厦门 外贸商城网站
  • 城乡建设学校官方网站程序外包网站
  • 深圳 网站设计师 招聘西数网站管理助手 伪静态
  • 广州网站备案要求国外工装设计网站大全
  • php+mysql 2012也买酒商城网站源码怎么用net123做网站
  • 西充移动网站建设如何设计一个简洁的logo
  • 济宁做网站自媒体新手入门
  • 重庆网站开发哪家专业网站布局图
  • 网站设计原则的历史网站开发 模块
  • 做企业网站收费自己的网站怎么做排名
  • 做网站网站软件开发经费预算
  • 优化网站图片网站图片布局
  • 有效的网站需要做到什么意思商业网站是什么
  • 网站设计开发网站用c 建网站时怎么做导航菜单栏
  • 哪些网站做推广比较有效果厦门网站建设公司名单
  • 街头小吃加盟网站建设网站专题制作
  • 网站论坛推广方案加强思政部网站建设
  • 查看WordPress网站插件北京西站附近的景点有哪些
  • 网站建设技术合同模板下载怎么用phpstudy做网站
  • 青岛网站建设找二维码生成器怎么弄
  • 百度突然搜不到我的网站网络安全软件有哪些
  • 江阴做网站的地方网站维护需要的知识
  • 做网站是域名怎么申请网页设计跟做网站一样吗
  • 叮当快药网站谁做的网站开发遇到的最大困难