
Java 设计模式
文章平均质量分 61
Java设计模式
xiangxiongfly915
Android & Flutter & H5
https://github.com/xiangxiongfly
展开
-
Java 设计模式总结
设计模式(Design Patterns)是软件工程中解决常见问题的经典解决方案。它们提供了一种标准化的方式来设计和组织代码,使得代码更易于维护、扩展和复用。设计模式分为三大类:创建型模式、结构型模式和行为型模式,共23种。原创 2025-02-18 15:05:56 · 942 阅读 · 0 评论 -
Java 设计模式之解释器模式
解释器模式(interpreter):给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。原创 2025-02-18 10:44:33 · 338 阅读 · 0 评论 -
Java 设计模式之命令模式
命令模式(Command):将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作。敏捷开发原则告诉我们,不要为代码添加基于猜测的、实际不需要的功能。如果不清楚一个系统是否需要命令模式,一般就不要着急去实现它,事实上,在需要的时候通过重构实现这个模式并不困难,只有在真正需要如撤销/恢复操作等功能时,把原来的代码重构为命令模式才有意义。原创 2025-02-17 13:23:21 · 1041 阅读 · 0 评论 -
Java 设计模式之桥接模式
桥接模式(Bridge):将抽象部分与它的实现部分分离,使它们都可以独立地变化。通过桥接模式,可以避免类爆炸问题,并提高系统的可扩展性。原创 2025-02-14 17:46:22 · 537 阅读 · 0 评论 -
Java 设计模式之迭代器模式
迭代器模式(Iterator),提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露该对象的内部表示。原创 2025-02-14 14:23:45 · 828 阅读 · 0 评论 -
Java 设计模式之组合模式
组合模式(Composite):将对象组合成树形结构以表示’部分-整体’的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。优点:客户端可以统一处理单个对象和组合对象。支持递归组合,简化了复杂结构的处理。原创 2025-02-14 11:37:44 · 536 阅读 · 0 评论 -
Java 设计模式之备忘录模式
备忘录(Memento):在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。方便对该对象恢复到原先保存的状态。原创 2025-02-14 10:20:50 · 591 阅读 · 0 评论 -
Java 设计模式之访问者模式
访问者模式(Visitor Pattern):是一种行为设计模式,它允许你将算法与对象结构分离。通过访问者模式,你可以在不修改对象结构的情况下,向对象结构中的元素添加新的操作。访问者模式的核心思想是:将操作从对象结构中分离出来,封装到一个独立的访问者对象中。这样,当需要添加新的操作时,只需要创建一个新的访问者,而不需要修改现有的对象结构。原创 2019-03-13 11:08:09 · 912 阅读 · 1 评论 -
Java 设计模式之适配器模式
适配器模式(Adapter):将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。适配器模式主要应用于希望复用一些现存的类,但是接口又与复用环境要求不一致的情况。原创 2018-11-05 22:54:06 · 1139 阅读 · 0 评论 -
Java 设计模式之责任链模式
职责链模式(Chain of Responsibility):使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这个对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。原创 2018-12-17 17:56:13 · 688 阅读 · 0 评论 -
Java 设计模式之工厂方法模式
定义一个用于创建对象的接口,让子类决定实例化哪个类。工厂方法使一个类的实例化延迟到其子类。工厂方法模式核心是反射,需要增加新产品时,只需创建新的产品类。原创 2018-11-03 19:06:13 · 314 阅读 · 0 评论 -
设计模式之UML
统一:UML通过统一的表示方法,让不同知识背景的领域专家、系统分析设计人员和开发人员以及用户可以方便地交流。建模:通过一些标准的图形符号和文字来对系统进行建模,用于对软件进行描述、可视化处理、构造和建立软件系统制品的文档。语言:一种分析设计语言,也就是一种建模语言。原创 2018-12-31 23:34:19 · 681 阅读 · 0 评论 -
Java 设计模式七大原则
单一职责原则开闭原则里氏替换原则依赖倒置原则接口隔离原则迪米特原则合成复用原则原创 2021-08-22 15:12:19 · 156 阅读 · 0 评论 -
Java 设计模式之状态模式
状态模式(State):当一个对象的内部状态改变时允许改变其行为,这个对象看起来像是改变了其类。状态模式主要解决的是当控制一个对象状态转换的条件表达式过于复杂时的情况。把状态的判断逻辑转移到表示不同状态的一系列类当中,可以把复杂的判断逻辑简化状态模式中类有状态,状态的修改会改变整个类行为。策略模式没有状态,策略的选择由客户端决定。原创 2021-01-25 11:56:39 · 649 阅读 · 0 评论 -
Java 设计模式之中介者模式
中介者模式(Mediator):用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。迪米特法则’,如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用。如果其中一个类需要调用另一个类的某一个方法的话,可以通过第三者转发这个调用。原创 2021-01-22 17:13:12 · 201 阅读 · 0 评论 -
Java 设计模式之模板方法模式
模板方法(Template Method)模式:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。优点:模板方法模式通过把不变的行为搬移到超类,去除了子类中的重复代码。子类实现算法的某些细节,有助于算法的扩展。原创 2021-01-12 16:53:37 · 229 阅读 · 0 评论 -
Java 设计模式之外观模式
外观模式(Facade):为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。无论是做SDK还是封装API,我们大多都会用到外观模式,它通过一个外观类使得整个系统的结构只有一个统一的高层接口,这样能降低用户的使用成本。原创 2021-01-08 16:06:46 · 143 阅读 · 0 评论 -
Java 设计模式之代理模式
代理模式(委托模式)是结构型设计模式之一。比如代购、代理上网、打官司等。原创 2020-12-31 15:56:28 · 155 阅读 · 0 评论 -
Java 设计模式之原型模式
定义:使用原型实例指定创建对象的种类,并且通过克隆这些原型创建新的对象。原型模式是一种对象创建型模式。过程:需要首先创建一个原型对象,再通过复制这个原型对象来创建更多同类型的对象。优点:原型模式是在内存中二进制流的拷贝,要比new一个对象的性能要好,特别是需要产生大量对象时。缺点:直接在内存中拷贝,构造函数是不会执行的,这样就减少了约束。原创 2020-12-08 17:48:16 · 184 阅读 · 0 评论 -
Java 单例模式
单例模式(Singleton):保证一个类仅有一个实例,并提供一个访问它的全局访问点。原创 2020-11-03 15:12:49 · 307 阅读 · 0 评论 -
Java 排序算法
冒泡排序冒泡排序本质是两两比较交换。两个for循环嵌套,每趟比较相邻的元素,将大的元素放后面。/** * 冒泡排序 */public static void bubbleSort(int[] arr) { int temp; //是否交换过 boolean swap; //总趟数 for (int i = 0; i < arr.lengt...原创 2020-03-23 10:54:13 · 167 阅读 · 0 评论 -
Java 设计模式之简单工厂模式
简单工厂模式并不属于经典的23种设计模式之一。它通常被视为工厂方法模式的一种简化形式,用于创建对象,但不具备工厂方法模式的灵活性。原创 2019-07-09 18:11:31 · 261 阅读 · 0 评论 -
Java 设计模式之观察者模式
定义:观察者模式(发布-订阅模式)属于行为型模式的一种,它定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态变化时,会通知所有的观察者对象,使他们能够自动更新自己。原创 2019-07-11 14:38:32 · 222 阅读 · 0 评论 -
Java 设计模式之建造者模式
定义:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。优点:具体的建造者类之间是相互独立的,容易扩展。由于具体的建造者是独立的,因此可以对建造过程逐步细化,而不对其他的模块产生任何影响。原创 2019-07-11 18:01:50 · 284 阅读 · 0 评论 -
Java 设计模式之抽象工厂模式
抽象工厂模式是对工厂方法模式的升级。为创建一组相关或者相互依赖的对象提供一个接口,而无需指定它们的具体类。当需要创建的产品有多个产品线(产品族)时使用抽象工厂模式是比较合适。原创 2019-07-24 18:03:36 · 225 阅读 · 0 评论 -
Java 设计模式之装饰模式
装饰模式是结构型设计模式,不必改变类文件和使用继承的情况下,动态地扩展一个对象的功能,是继承的替代方案之一。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。原创 2019-07-25 17:48:42 · 252 阅读 · 0 评论 -
Java 设计模式之享元模式
享元模式(Flyweight):通过共享对象来减少内存使用和提高性能。场景:当系统中存在大量相似对象时,当这些对象的大部分状态可以外部化时,当需要减少内存占用时。原创 2019-07-31 11:11:34 · 248 阅读 · 0 评论 -
Java 设计模式之策略模式
定义一系列的算法,把每一个算法封装起来, 并且使它们可相互替换。策略模式模式使得算法可独立于使用它的客户而独立变化。原创 2019-07-26 12:46:08 · 247 阅读 · 0 评论