
设计模式
c929833623lvcha
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
1. 单例模式
package 单例模式;//单例模式class Singleton{ private static Singleton instance;//定义静态成员,因为静态方法getInstance()只能访问静态成员 private Singleton(){}//构造方法让其private ,这就堵死了外界利用new创建此类实例的可能 public static Singleton getInstance(){//此方法是获得本类实例的唯一全局访问点 if(instance==null){//若原创 2011-05-11 11:03:00 · 122 阅读 · 0 评论 -
11.组合模式
<br />package 组合模式;<br />import java.util.*;<br />abstract class Company{//公司抽象类<br /> protected String name;<br /> <br /> public Company(String name){<br /> this.name=name;<br /> }<br /> <br /> public abstract void Add(Company c);//增加<br /> public abstra原创 2011-05-16 08:35:00 · 245 阅读 · 0 评论 -
10.装饰模式
<br />package 装饰模式;<br />//动态地给一个对象添加一些额外的职责<br />abstract class Person{//Component类 <br /> protected String name;<br /> public Person(){};<br /> public Person(String name){<br /> this.name=name;<br /> }<br /> public abstract void Show();<br />}<br /> c原创 2011-05-15 09:40:00 · 139 阅读 · 0 评论 -
6.策略模式
<br />package 策略模式;<br /><br />abstract class Strategy{//抽象策略类<br /> public abstract void AlgorithmInterface();<br />}<br /><br />class ConcreteStrategyA extends Strategy{//具体算法A<br /> <br /> public void AlgorithmInterface(){//算法A的实现方法<br /> System.out.pr原创 2011-05-15 09:37:00 · 115 阅读 · 0 评论 -
2.简单工厂模式
package 简单工厂模式;//简单工厂模式class Operation//运算类{protected double m=0;protected double n=0;public void setNum(double m,double n){ this.m=m; this.n=n;}public double GetResult(){ double d=0; return d;}}class AddOperation extends Operation//加法类{public double Get原创 2011-05-14 08:45:00 · 111 阅读 · 0 评论 -
8.代理模式
<br />package 代理模式;<br />class Girl{<br /> private String name;//女孩的名字<br /> public Girl(String name){<br /> this.name = name;<br /> }<br /> <br /> public String getName() {<br /> return name;<br /> }<br /> public void setName(String name) {<br /> this.原创 2011-05-15 09:38:00 · 349 阅读 · 0 评论 -
6.策略模式
package 策略模式;abstract class Strategy{//抽象策略类 public abstract void AlgorithmInterface();}class ConcreteStrategyA extends Strategy{//具体算法A public void AlgorithmInterface(){//算法A的实现方法 System.out.println("算法A的实现"); }}class ConcreteStrategyB extends Strategy{/原创 2011-05-14 08:47:00 · 125 阅读 · 0 评论 -
4.抽象工厂模式
package 抽象工厂模式;//抽象用户interface User{ public void InsertUser(); public void GetUser();}//Sqlserver用户class SqlserverUser implements User{ public void InsertUser(){ System.out.println("在SQL Server中给User表增加一条记录"); } public void GetUser(){ System.out.print原创 2011-05-14 08:46:00 · 128 阅读 · 0 评论 -
9.观察者模式
<br />package 观察者模式;<br />import java.util.*;//包含List接口和集合类ArrayList<br />//定义了一种一对多的依赖关系,让多个观察对象(公司员工)同时监听一个主题对象(秘书),<br />//主题对象状态发生变化时,会通知所有的观察者,使它们能够更新自己。<br />abstract class Subject{//抽象通知者 <br /> <br /> protected List <Observer> observers=ne原创 2011-05-15 09:39:00 · 112 阅读 · 0 评论 -
7.桥接模式
<br />//桥接模式<br />package 桥接模式;<br />//软件<br />abstract class Software{//定义实现部分的抽象类<br /> public abstract void Run();//定义抽象方法<br />}<br />//游戏软件<br />class GameSoftware extends Software{//具体实现<br />public void Run(){<br />System.out.println("运行手机软件");<br原创 2011-05-15 09:38:00 · 130 阅读 · 0 评论 -
5.模板方法模式
package 模板方法模式;abstract class TestPaper{//抽象类 public void TemplateMethod(){//模板方法,给出了算法的骨架,调用了一些不变的具体方法和抽象操作 System.out.println("你最喜欢什么茶?a.红茶 b.绿茶 c.抹茶 d.龙井 "); System.out.println("答案:"+Answer1()); System.out.println("你最喜欢什么地方?a.宋城 b.西溪 c.西塘 d.灵隐"); Sy原创 2011-05-14 08:47:00 · 117 阅读 · 0 评论 -
3.工厂方法模式
package 工厂方法模式;//工厂方法模式class LeiFeng{//雷锋public void Sweep(){System.out.println("雷锋扫地");}}class Graduate extends LeiFeng{//学雷锋的大学生public void Sweep(){System.out.println("大学生扫地");}}class Volunteer extends LeiFeng{//社区志愿者public void Sweep(){System.out.printl原创 2011-05-14 08:45:00 · 148 阅读 · 0 评论 -
学习GoF设计模式的重要性
著名的EJB领域顶尖的专家Richard Monson-Haefel在其个人网站:www.EJBNow.com中极力推荐的GoF的《设计模式》,原文如下: Design Patterns Most developers claim to experience an epiphany reading this book. If you've never read the Design转载 2012-04-10 11:12:02 · 522 阅读 · 0 评论