
设计模式
凌睿马
初学Java小菜鸟,愿在这里留下学习的足迹。
展开
-
UML类图
UML类图可用于描述每一个设计模式的结构以及对模式实例进行说明,而模式结构又是设计模式解法的核心组成部分。学一个设计模式,如果不能绘制和理解其结构图,基本上等于没学。原创 2024-02-21 16:11:53 · 390 阅读 · 0 评论 -
设计模式-创建型模式-简单工厂模式
简单工厂模式(Simple Factory Pattern):定义一个工厂类,它可以根据参数的不同返回不同类的实例,被创建的实例通常都具有共同的父类。因为在简单工厂模式中用于创建实例的方法是静态(static)方法,因此简单工厂模式又被称为静态工厂方法(Static Factory Method)模式,它属于类创建型模式。1 简单工厂模式代码。原创 2024-02-21 17:42:10 · 786 阅读 · 0 评论 -
设计模式-创建型模式-工厂方法模式
工厂方法模式(Factory Method Pattern):定义一个用于创建对象的接口,让子类决定将哪一个类实例化。工厂方法模式又简称为工厂模式(Factory Pattern),又可称作虚拟构造器模式(Virtual Constructor Pattern)或多态工厂模式(Polymorphic Factory Pattern)。弥补了简单工厂模式,每增加一个产品就增加一个分支的缺点,简单工厂不符合封闭-开放原则,工厂方法模式增加新的产品时,需要增加新的产品类与工厂类,不改变原有程序。原创 2024-02-21 21:28:43 · 700 阅读 · 0 评论 -
设计模式-行为型模式-模版方法模式
模板方法模式,定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。模板方法模式是通过把不变行为搬移到超类,去除子类中的重复代码来体现它的优势。原创 2024-03-09 19:52:15 · 566 阅读 · 0 评论 -
设计模式总结
ConcreteHandler类,具体处理者类,处理它所负责的请求,可访问它的后继者,如果可处理该请求,就处理之,否则就将该请求转发给它的后继者。这个模版方法一般是一个具体方法,它给出了一个顶级逻辑的骨架,而逻辑的组成步骤在相应的抽象操作中,推迟到子类实现。只有一个User类和User操作类的时候,是只需要工厂方法模式的,但现在显然你数据库中有很多的表,而SQL Server与Access又是两大不同的分类,所以解决这种涉及到多个产品系列的问题,有一个专门的工厂模式叫抽象工厂模式。原创 2024-03-11 12:00:32 · 961 阅读 · 0 评论 -
设计模式-结构型模式-外观模式
外观模式(Facade),为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。原创 2024-03-01 23:46:56 · 748 阅读 · 0 评论 -
设计模式-结构模式-装饰模式
装饰模式(Decorator Pattern):动态地给一个对象增加一些额外的职责,就增加对象功能来说,装饰模式比生成子类实现更为灵活。装饰模式是一种对象结构型模式。原创 2024-03-01 21:25:04 · 665 阅读 · 0 评论 -
设计模式-结构型模式-桥接模式
桥接模式(Bridge Pattern):将抽象部分与其实现部分分离,使它们都可以独立地变化。它是一种对象结构型模式,又称为柄体(Handle and Body)模式或接口(Interface)模式。桥接模式用一种巧妙的方式处理多层继承存在的问题。桥接模式采用抽象关联取代了传统的多层继承,将类之间的静态继承关系转换为动态的对象组合关系,使得系统更加灵活,并易于扩展,同时有效控制了系统中类的个数。合成/聚合复用原则(CARP),尽量使用合成/聚合,尽量不要使用类继承。原创 2024-02-25 22:57:53 · 612 阅读 · 0 评论 -
设计模式-结构型模式-适配器模式
结构型模式(Structural Pattern)关注如何将现有类或对象组织在一起形成更加强大的结构。原创 2024-02-25 22:33:49 · 605 阅读 · 0 评论 -
设计模式-创建型模式-原型模式
浅复制’,被复制对象的所有变量都含有与原来的对象相同的值,而所有的对其他对象的引用都仍然指向原来的对象。深复制把引用对象的变量指向复制过的新对象,而不是原有的被引用的对象。”对于引用类型的数据,比如类或者引用,会将原型生成的新实例指向被复制的实例,新旧实例的引用类型数据指向的是同一个。3、在简历类克隆方法中,通过先初始化工作简历类的构造方法创建新的简历类,再复制其它值类参数,最终返回深拷贝的简历类。工作经历类是简历类的成员变量,此为实现工作经历类的深拷贝。这个可以省略new的过程,不需要重新执行构造函数。原创 2024-02-22 22:31:09 · 754 阅读 · 0 评论 -
设计模式-创建型模式-抽象工厂模式
sqlServerFactory和AccessFactory都能查询部门表和用户表,选择sqlServerFactory采用sqlserver获取数据,选择AccessFactory采用Access获取数据。抽象工厂模式又称为Kit模式,它是一种对象创建型模式。由于工厂方法模式中的每个工厂只生产一类产品,可能会导致系统中存在大量的工厂类,势必会增加系统的开销。类比上图,猫工厂和狗工厂都能产生动物和食物,选择猫工厂产生猫和猫粮,选择狗工厂产生狗和狗粮。如果增加一个牛,需要添加牛工厂,牛,牛粮等才能实现。原创 2024-02-21 22:20:37 · 702 阅读 · 0 评论 -
设计模式-创建型模式-单例模式
创建型模式(Creational Pattern)关注对象的创建过程,是一类最常用的设计模式,每个创建型模式都通过采用不同的解决方案来回答3个问题:创建什么(What),由谁创建(Who)和何时创建(When)。原创 2024-02-21 17:22:28 · 989 阅读 · 0 评论 -
面向对象 设计原则
单一职责原则:类应该只有一个改变的理由;开放-封闭原则:类应该对扩展开放,对修改关闭;迪米特原则:只和朋友交谈;里氏替换原则:子类可以扩展父类的功能,但不能改变父类原有的功能;接口隔离原则:不能强迫用户去依赖那些他们不使用的接口;依赖倒转原则:针对接口编程,不针对实现编程;组合/聚合复用原则:多用组合,少用继承。原创 2024-02-19 22:47:10 · 928 阅读 · 0 评论