设为首页 加入收藏

TOP

什么是设计模式?介绍一下你了解的设计模式有哪些?
2014-11-23 23:17:08 来源: 作者: 【 】 浏览:3
Tags:什么 设计模式 介绍 了解 哪些

设计模式:在大量的实践中总结、理论化之后优选的代码结构、编程风格,解决问题的方案和途径。


组成部分:


模式名称:名词或名词短语,用来描述模式的问题、解决方案和效果


问题:描述何时使用该模式。


解决方案:描述模式的组成,各自的职责,相互关系


效果(consequence):描述使用模式的效果及使用这个模式时应该权衡的问题。


背景:某个类的实例对象在内存中只有一个。


实现:


1、 构造函数似有。


2、 由本类提供一个静态的返回值是本类类型的获得本类对象的方法。


3、 定义一个静态的本类类型的成员变量来保存本类类型的对象。


/**


* 单例模式


* 1、构造函数私有


* 2、由本类提供一个或得本类对象的静态方法


* 3、定义一个保存实例对象的静态成员变量


* @author Administrator


*


*/


public class SingletonPattern {


private double random;


private static SingletonPattern sp;


private SingletonPattern(){


random = Math.random();


}


public double getRandom(){


return random;


}


static public SingletonPattern getInstance(){


if(sp == null){


sp = new SingletonPattern();


}


return sp;


}


}


背景:在抽象父类中对各个子类的共同功能进行描述或实现。



在父类中应尽可能多的将子类的共同特性进行描述或实现,而将各个子类的不同功能在子类中进行具体实现,限制子类设计的随意性–(由父类实现共同部分,由子类实现不同部分)。


例:


public class ConstructionOfBankInBeijing {


private ConstructionOfBank construction; //组合


private double addInterest;



public ConstructionOfBankInBeijing(ConstructionOfBank construction, double addInterest) {


this.construction = construction;


this.addInterest = addInterest;


}


public double CalculateInterestNew(){


return construction.calculateInterest()+addInterest;


}


}


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇面试常见话题的问与答 About Ques.. 下一篇初级软件测试工程师面试题笔试题集

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: