
java设计模式
文章平均质量分 74
YXWik6
西安程序员一枚,喜欢研究各种技术,AI大时代来临后开始热衷于AI领域的探索,所有文章技术工具内容均只用于学习,如有侵权请联系删除
展开
-
23种设计模式
创建类型:5种结构类型:7种行为类型:11种。原创 2025-02-21 10:58:06 · 272 阅读 · 0 评论 -
java设计模式之简单工厂模式
定义:由一个工厂对象决定创建出哪一种产品类的实例类型:属于创建型,但不属于GOF23中设计模式工厂模式分为三种:1、简单工厂模式(静态工厂方法模式)2、工厂方法模式(多态性工厂模式)3、抽象工厂模式(工具箱模式)适用场景:工厂类负责创建的对象比较少。客户端(应用层)只知道传入工厂类的参数,对于如何创建对象(逻辑)不关心。优点:只需要传入一个正确的参数,就可以获取你所需要的对象...原创 2019-10-12 18:01:45 · 158 阅读 · 0 评论 -
java设计模式之设计原则⑥里氏代换原则
定义:(1)一个软件实体如果使用的是一个父类的话,那么一定适用于其子类,而且它察觉不出父类和子类对象的区别。也就是说,在软件里面,把父类替换成它的子类,程序的行为没有变化。(2)一个软件实体如果使用的是一个子类的话,那么它不能适用于其父类。以下通过案例进行理解里氏代换原则:首先创建一个父类Person,写一个display方法创建一个子类Man继承了Person这个类,重写其d...原创 2019-10-12 17:27:01 · 259 阅读 · 0 评论 -
java设计模式之设计原则⑤迪米特原则
定义:(1)一个对象应该对其他对象保持最少的了解。又叫最少知道原则(2)尽量降低类与类之间的耦合(3)强调只和朋友交流,不和陌生人说话(意思就是对外部引入的类越少越好)。朋友:指的是出现在成员变量,方法的输入,输出参数中的类称为成员朋友类,而出现在方法体内部的类则不属于朋友类。优点:降低类之间的耦合如果过分的使用迪米特原则会产生大量的中介类,导致系统变复杂,为维护带来难度,所以我们在...原创 2019-10-12 16:38:39 · 199 阅读 · 0 评论 -
java设计模式之设计原则④接口隔离原则
定义:(1)用多个专门的接口,而不使用单一的总接口,客户端不应该依赖它不需要的接口。(2)一个类对一个类的依赖应该建立在最小的接口上。(3)建立单一接口,不要建立庞大臃肿的接口。(4)尽量细化接口,接口中的方法尽量少。(5)注意适度原则,一定要适度。优点:符合常说的高内聚低耦合的设计思想,从而使得类具有很好的可读性,可扩展和可维护性。以下通过案例进行理解接口隔离原则首先创建一个I...原创 2019-10-12 15:56:28 · 223 阅读 · 0 评论 -
java设计模式之设计原则③单一职责原则
定义:不要存在多于一个导致类变更的原因一个类/接口/方法只负责一项职责优点:降低类的复杂度,提高类的可读性,提高系统的可维护性、降低变更引起的风险以下通过案例进行理解单一职责原则:创建一个Brid(鸟)类创建一个Test测试类我们会发现大雁用翅膀非是正确的,但鸵鸟飞不起来,所以我们需要进行判断如果现在再传来一些特色的鸟类,那我们这个方法还要继续扩展,风险率就变高了,不遵从单...原创 2019-08-23 17:14:32 · 210 阅读 · 0 评论 -
java设计模式之设计原则②依赖倒置原则
定义:⑴高层模块不应该依赖低层模块,二者都应该依赖其抽象⑵抽象不应该依赖细节,细节应该依赖抽象⑶针对接口编程,不要针对实现编程我们通过抽象包括使用接口或者抽象类可以使各个类或模块的实现彼此独立互不影响,从而实现模块间的松耦合。使用依赖倒置原则需要注意:每个类尽量实现或继承自接口或抽象类,尽量避免从具体的类派生,尽量不要覆盖其基类的方法优点:⑴可以减少类间的耦合性⑵提高系统稳定性...原创 2019-08-23 11:41:19 · 205 阅读 · 0 评论 -
java设计模式之设计原则①开闭原则
定义:一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。强调的是用抽象构建框架,用实现扩展细节。优点:提高软件系统的可复用性及可维护性例如:创建一个Course接口获取id方法获取name方法获取price方法创建一个JavaCourse类实现Course接口设置三个属性Integer idString nameDouble price创建一个满参的构造函数...原创 2019-08-22 18:49:57 · 294 阅读 · 0 评论 -
java设计模式之UML③类图讲解多个类之间的关系
图来自大话设计模式虚线和箭头指向依赖关系,也就是动物类依赖氧气类和水类一般依赖关系是一个类使用另一个类作为参数使用动物是一个父类 鸟继承动物其中空心三角继承关系(箭头方向是子类指向父类)实心菱形代表组合关系上面的 1 和 2 代表每一个鸟有两个翅膀这两个类有相同的生命周期这个图表达的是大雁,鸭,企鹅是鸟的子类,继承自鸟关联关系一般表示一个类和另一个类对象是有关联的...原创 2019-08-22 18:25:49 · 461 阅读 · 0 评论 -
java设计模式之UML②类图讲解
类名 属性 行为 三大部分+: 最大的权限 public-:最小的权限 private#:protected~:默认的 default:后面 String int double 代表类型斜体代表的抽象,其中study()是抽象方法所以这个类应该是抽象类 类名GeelyClass就应该改为斜体的...原创 2019-08-22 17:53:34 · 251 阅读 · 0 评论 -
java设计模式之UML①
UML是一个开放的方法用于说明、可视化、构建和编写一个正在开发的面向对象的,软件密集系统的制品的开放方法UML的特点这些最佳实践在对大规模,复杂系统进行建模方面,特别是在软件架构层次已经被验证有效UML2.2分类1.结构式图形:强调的是系统式的建模2.行为式图形:强调系统模型中触发的事件3.交互式图形:属于行为式图形子集合,强调系统建模中资料流程结构式图形:静态图(类图,对象图,...原创 2019-08-22 17:15:55 · 312 阅读 · 0 评论