单一职责原则(Java设计模式,设计原则)

  • 格式:doc
  • 大小:34.00 KB
  • 文档页数:3

下载文档原格式

  / 7
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Java设计模式

设计模式是一套被反复使用、多数人知晓、经过分类编目的优秀代码设计经验的总结。设计模式,我想大家都经常听,其重要性也不言也意。从今天开始,会向大家介绍23种Java设计模式。

设计模式可分为23种,三大类型:

一、创建型,包括:

1.单例模式(单体模式):一个类只有一个实例,而且自行实例化并向整个系统提供

这个实例

2.工厂方法模式

3.抽象工厂模式

4.建造者模式

5.原型模式

二、结构型

1.代理模式:为其他对象提供一种代理以控制对该对象的访问

2.装饰模式

3.适配器模式

4.组合模式

5.桥梁模式

6.外观模式

三、行为型

1.模板方法模式

2.命令模式

3.责任链模式

4.策略模式

5.迭代器模式

6.中介者模式

7.观察者模式

8.备忘录模式

9.访问者模式

10.状态模式

11.解释器模式

在说设计模式之前,需要说一下设计原则,下面先说第一个原则

单一职责原则

定义:一个类,应当只有一个引起它变化的原因,也就是一个类应该只有一个职责。意思是,就一个类而言,应该只专注做一件事和仅有一个引起变化的原因。

下面以一个用户管理为例演示单一职责原则。在业务逻辑层上定义类UserManager,在数据访问层定义类UserDao,在实体对象层定义类User,每个类具有不同的职责和功能。

public class User {

private String username;

private String userpass;

private int role;

//………….各个属性的get、set方法

}

public class UserDao extends BaseDao {

//返回所有用户

public List getAllUser() {

List userList = new ArrayList();

......//访问数据库

return userList;

}

//根据用户名查找用户

public User getUserByName(String name) {

User user=null;

String sql="SELECT * FROM userdetail WHERE username=?";

...//查找相应用户名的用户

return user;

}

//添加新用户

public boolean addUser(User user) {

//返回true 表示成功

}

}

public class UserManager {

private UserDao userDao = new UserDao();

//验证用户名和密码

public boolean CheckUser(String name,String pass) {

boolean flag=false;

User user =userDao.getUserByName(name);

if(user!=null&&user.getUsername().equals(pass)) {

flag=true;

}

return flag;

}

//注册新用户

public void registUser(User user) {

if(userDao.getUserByName(user.getUsername()) !=null) {

System.out.println("用户名已存在");

return;

}

if(UserDao.addUser(user)) {

//注册成功

}else {

//注册失败

}

}

}