`
newlife01
  • 浏览: 3835 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
最近访客 更多访客>>
社区版块
存档分类
最新评论

设计模式学习<1>

阅读更多
今天在公司有时间看了下设计模式,现在写下自己的对它的理解..

1.开--闭原则:
一个软件实体应当对扩展 "开" 放,对修改 "关" 闭

2.理氏代换原则:
一个如果适用一基类,那么它必然适用于其子类


设计模式解析:

1.工厂模式:对类实例化不要直接调用类,而要对接口,如:InterfaceA interface = new entityClass();

2.工厂方法:设计一个工厂来完成创建实例工作。如:

Factory a = new Factory("com.life.entityClass");
//工厂类:
Factory{
public static InterfaceType create(String url)
{
Class c = Class.forName(url);
InterfaceType type = (InterfaceType)c.newInstance();
return type;
}
}

3.抽象工厂:一个类在实例化时要同里对他里面的类也进行实例化,此时可以把这一部分提取出来做为一个抽象工厂,如:

public abstract Facotory
{
abstract SampleInterface create(String url);
abstract SampleInterface2 create(String url);
}
//每个类生产出一套实例
public class SampleInterfaceA extends Factory
{
public SampleInterface create(String url)
{
....
return SampleInterface;
}
public SampleInterface2 create(String url)
{
...
return SampleInterface2;
}
}
//调用:Factory factory = new SampleInterfaceA(...);

分享到:
评论
2 楼 newlife01 2008-01-08  
谢谢了,StringUtils.trim(Name);
1 楼 抛出异常的爱 2008-01-08  
不用trim用StringUtil中的一个方法

相关推荐

    设计模式中文版 1

    设计模式中文版这个有10m很大我分2次传&lt;br&gt;目 录&lt;br&gt;序言&lt;br&gt;前言&lt;br&gt;读者指南&lt;br&gt;第1章 引言 1&lt;br&gt;1.1 什么是设计模式 2&lt;br&gt;1.2 Smalltalk MVC中的设计模式 3&lt;br&gt;1.3 描述设计模式 4&lt;br&gt;1.4 设计模式的编目 5&lt;br&gt;...

    设计模式part2

    目 录&lt;br&gt;序言&lt;br&gt;前言&lt;br&gt;读者指南&lt;br&gt;第1章 引言 1&lt;br&gt;1.1 什么是设计模式 2&lt;br&gt;1.2 Smalltalk MVC中的设计模式 3&lt;br&gt;1.3 描述设计模式 4&lt;br&gt;1.4 设计模式的编目 5&lt;br&gt;1.5 组织编目 7&lt;br&gt;1.6 设计模式怎样解决设计...

    《设计模式》

    太大了,无线速度慢,我一次传2章&lt;br&gt;目 录&lt;br&gt;序言&lt;br&gt;前言&lt;br&gt;读者指南&lt;br&gt;第1章 引言 1&lt;br&gt;1.1 什么是设计模式 2&lt;br&gt;1.2 Smalltalk MVC中的设计模式 3&lt;br&gt;1.3 描述设计模式 4&lt;br&gt;1.4 设计模式的编目 5&lt;br&gt;1.5 ...

    jive.chm

    &lt;br&gt;系统设计&lt;br&gt; 1 jive设计思路 &lt;br&gt; 2 jive的工作内幕 &lt;br&gt; 3 Jive源代码研究 &lt;br&gt; 4 Jive中的设计模式 &lt;br&gt; 5 jive学习笔记 &lt;br&gt;&lt;br&gt;&lt;br&gt; &lt;br&gt;设计模式&lt;br&gt; 1 大道至简-Java之23种模式一点就通 &lt;br&gt; 2 设计模式...

    Jive资料集

    系统设计&lt;br&gt; 1 jive设计思路 &lt;br&gt; 2 jive的工作内幕 &lt;br&gt; 3 Jive源代码研究 &lt;br&gt; 4 Jive中的设计模式 &lt;br&gt; 5 jive学习笔记 &lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;数据库设计&lt;br&gt; 1 Jive Forums数据库说明(英文) &lt;br&gt; 2 Jive KB...

    基于JSP的办公自动化系统

    人性化设计&lt;br&gt;&lt;br&gt;软件产品介质:&lt;br&gt;1.oa.rar &lt;br&gt;2.oaclass.rar &lt;br&gt;3.oalib.rar&lt;br&gt;4.oadatabase.rar&lt;br&gt;4.Web版办公自动化OA系统使用手册.doc &lt;br&gt;5.web.xml server.xml &lt;br&gt;&lt;br&gt;需要者请联系:e_mail:fzlotuscn...

    ERP文档资源

     HRERP简介 2&lt;br&gt; 化纤行业解决方案 2&lt;br&gt; 系统特点 4&lt;br&gt;1 功能完善强大 4&lt;br&gt;2 先进、灵活的体系结构 4&lt;br&gt;2.1复用设计 5&lt;br&gt;2.2 HRERP应用和特定企业的ERP系统应用 6&lt;br&gt;2.3 支持化纤企业的特殊业务...

    基于JSP新闻发布系统

    &lt;br&gt;&lt;br&gt;本系统是WEB模式的新闻发布管理系统&lt;br&gt;运行环境:Tomact+JDK&lt;br&gt;编程模式:JSP+JavaBean+JavaServlet&lt;br&gt;后台数据库:MySql\Access&lt;br&gt;&lt;br&gt;系统主要完成的功能如下:&lt;br&gt;&lt;br&gt;管理员(后台)&lt;br&gt;.系统管理:用户...

    基于JSP的实验室教学管理系统

    &lt;br&gt;&lt;br&gt;本系统是WEB模式的实验室教学管理系统&lt;br&gt;运行环境:Tomact+JDK&lt;br&gt;编程模式:JSP+JavaBean+JavaServlet&lt;br&gt;后台数据库:MS-Access\MySql&lt;br&gt;&lt;br&gt;系统特点:&lt;br&gt;&lt;br&gt;1.基于免费环境开发 jdk+Tomcat+Ms-Access...

    基于JSP的产供销管理系统

    &lt;br&gt;&lt;br&gt;本系统是Web模式的ERP-企业进销存管理系统&lt;br&gt;&lt;br&gt;运行环境:Tomact+JDK&lt;br&gt;&lt;br&gt;编程模式:JSP+JavaBean+JavaServlet&lt;br&gt;&lt;br&gt;后台数据库:MS-Access\MySql&lt;br&gt;&lt;br&gt;系统主要功能简介:&lt;br&gt;&lt;br&gt;.订单管理 1....

    实验室教学管理系统

    &lt;br&gt;&lt;br&gt;本系统是WEB模式的实验室教学管理系统&lt;br&gt;运行环境:Tomact+JDK&lt;br&gt;编程模式:JSP+JavaBean+JavaServlet&lt;br&gt;后台数据库:MS-Access&lt;br&gt;&lt;br&gt;系统特点:&lt;br&gt;&lt;br&gt;1.基于免费环境开发 jdk+Tomcat+Ms-Access&lt;br&gt;2....

    powerbuilder案例开发集锦(源码光盘)1

    &lt;br&gt; 案例3 使用PB获得CPU的速度、型号和生产商 &lt;br&gt; 案例4 磁盘格式化的实现 &lt;br&gt; 第11章 综合应用案例&lt;br&gt; 案例1 库存管理系统&lt;br&gt; 案例2 C/S应用程序设计案例――工资管理&lt;br&gt; 案例3 B/S应用程序举例―――简单...

    基于JSP + Tomact的实验室教学管理系统

    &lt;br&gt;&lt;br&gt;本系统是WEB模式的实验室教学管理系统&lt;br&gt;运行环境:Tomact+JDK&lt;br&gt;编程模式:JSP+JavaBean+JavaServlet&lt;br&gt;后台数据库:MS-Access\MySql&lt;br&gt;&lt;br&gt; ;系统特点:&lt;br&gt;&lt;br&gt;1.基于免费环境开发 jdk+Tomcat+Ms-...

    Visual C++ 编程资源大全(源码 窗体)

    1,pic_open.zip&lt;br&gt;带位图预览的打开文件对话框(4KB)&lt;END&gt;&lt;br&gt;2,bmpdlg.zip&lt;br&gt;一个位图对话框类 (11KB)&lt;END&gt;&lt;br&gt;3,folder.zip&lt;br&gt;只显示文件夹信息的文件对话框(2KB)&lt;END&gt;&lt;br&gt;4,dir_pic.zip&lt;br&gt;文件目录搜集工具...

    水木清华站∶Java版精华区 含jsp及js等集合.chm

    [目录]EJB 的设计模式 &lt;br&gt; 6. [目录]Servlet Container 和 应用服务器 &lt;br&gt; 3. [目录]TOMCAT &lt;br&gt; 9. [目录]纪念光盘精华区精选目录 &lt;br&gt; 1. [目录]Java编程 &lt;br&gt; 1. [目录]Java简单问题 &lt;br&gt; 2. [目录]为什么...

    数据结构(C++)有关练习题

    &lt;br&gt;&lt;br&gt;&lt;br&gt;实验八 综合实验&lt;br&gt;内容及步骤:&lt;br&gt;1、请使用C++编写班级学生学籍管理程序&lt;br&gt;每个学生的信息包括:姓名、学号和英语、数学、程序设计及体育成绩。从键盘输入数据,建立数据文件student.dat,然后,...

    Linux下基于python调用ffmpeg实现视频推流+源代码+文档说明

    * &lt;u&gt;存放播放模式&lt;/u&gt; * play_skip * &lt;u&gt;存放指令&lt;/u&gt; * font * msyh.ttc * &lt;u&gt;字体文件(修改后需要在data/filter_complex.txt中同步修改)&lt;/u&gt; * log * log.log * &lt;u&gt;send进程输出日志,结合py/send_...

    玩转校内&时间观念

    玩转校内Ver 1.12.0.29&lt;br&gt; 1、改写四种踩人模式:[男女混踩]、[男生专用]、[女生专用]、[条件踩人]为[联想踩人]、[男生专用]、[女生专用]、[条件踩人],优化了四种踩人模式的内核代码,加入[顺序浏览]模式,使程序...

    玩转校内&时间观念(终结版Ⅱ)

    玩转校内Ver 1.12.0.29&lt;br&gt;1、改写四种踩人模式:[男女混踩]、[男生专用]、[女生专用]、[条件踩人]为[联想踩人]、[男生专用]、[女生专用]、[条件踩人],优化了四种踩人模式的内核代码,加入[顺序浏览]模式,使程序共...

Global site tag (gtag.js) - Google Analytics