- 博客(7)
- 收藏
- 关注
原创 原型模式
public class Student implements Cloneable{ private String name; private String code; public String getName() { return name; } public void setName(String name) { this.name = name; } public S
2017-11-19 22:55:10 130
原创 工厂方法
定义:定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法是一个类的实例化延迟到其子类。工厂方法模式实现时,客户端需要决定实例化哪一个工厂来实现运算类,选择判断的问题还是存在的,也就是说,工厂方法把简单工厂的内部逻辑判断移到了客户端代码来进行。你想要加功能,本来是改工厂类,而现在是修改客户端。工厂方法 VS 简单工厂模式工厂方法克服了简单工厂违背开放-封闭原则的缺点,
2017-11-19 22:18:21 112
原创 装饰模式
定义:动态地给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更为灵活。装饰模式是为已有的功能动态添加更多功能的一种方式。当系统需要新功能的时候,是向旧的类中添加新的代码。这些新加的代码通常装饰了原来类的核心职责或主要行为,在主类中加入新的字段,新的方法和新的逻辑,从而增加了主类的 复杂度,而这些新加入的东西仅仅是为了满足一些只在某种特定的情况下才会执行的特殊行为的需要。装饰
2017-11-19 15:17:36 102
原创 单一职责,开放-封闭,依赖倒转
单一职责原则:就一个类而言,应该仅有一个引起它变化的原因。开放-封闭原则:是说软件实体(类,模块、函数等等)应该可以扩展,但是不可以修改。无论模块是多么的封闭,都会存在一些无法对之封闭的裱花。既然不可能完成封闭,设计人员必须对于他设计的模块应该对哪种变化封装做出选择。他必须先猜测出最有可能发生的变化种类,然后构造抽象来隔离那些变化。开放-封闭原则是面向对象设计的核心所在,遵循这个原
2017-11-17 22:27:08 146
原创 策略模式
1.定义:是一种定义一系列算法的方法,从概念上讲,所有的这些算法完成的都是相同的工作,只是实现不同,它可以以相同的方式调用所有的算法,减少了各种算法与使用算法类之间的耦合。class Context{ private Super super; public void setContext(Super super){ this.super = super; } public
2017-11-17 21:56:29 126
原创 UML简介
规则如下:“+” 表示public , “-”表示private ,“#”表示protected继承 空心三角 + 实线接口实现 空心三角 + 虚线关联 实线箭头 依赖 虚线箭头聚合 空心菱形 + 实线箭头 表示一种弱拥有,A对象包含B对象,B对象不属于A对象组合 实心菱形 + 实线箭头 表示一种强拥有,体现严格的部分和整体的关系
2017-11-17 21:37:25 97
原创 简单工厂模式
编程是一门艺术,需要考虑一下方面:可维护性,可扩展性,可复用,灵活性好。工厂类public class AnimalFactory{ public static Animal getInstance(int type){ Animal animal = null; switch(type){ case 0: animal = new Person(); brea
2017-11-17 21:22:56 111
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人