编程设计思想与模式
编程设计思想与模式
chang_hf
!!!越自律越自由!!!
展开
-
模板模式与观察者模式
我们常把 23 种经典的设计模式分为三类:创建型、结构型、行为型。分别用来解决什么类型的问题?创建型设计模式:对象的创建结构型设计模式:类或对象的组合或组装行为型设计模式:类或对象之间的交互设计模式就是用来解耦的创建型模式是将创建和使用代码解耦结构型模式是将不同功能代码解耦行为型模式是将不同的行为代码解耦模板模式模板模式基于继承来实现,回调基于组合来实现在模板模式经典的实现中,模板方法定义为 final,可以避免被子类重写。需要子类重写的方法定义为 abstract.原创 2020-09-23 14:14:51 · 300 阅读 · 0 评论 -
code design原则有哪些?
1、单一职责原则2、开闭原则对扩展开放,对修改关闭,概念不好理解,应用时尽量预留扩展点,避免新增功能时对老代码的修改。在众多的设计原则、思想、模式中,最常用来提高代码扩展性的方法有:多态、依赖注入、基于接口而非实现编程,以及大部分的设计模式(比如,装饰、策略、模板、职责链、状态等)。3、里氏替换原则子类不能修改父类功能与多态是有区别的,多态是能力,可以实现多种功能的能力。父类定义的方法,如银行卡提现不能超出余额,如果子类要扩展一个信用卡可以超出余额的方法,可以通过另外定一个父类方法,而不原创 2020-09-18 15:18:21 · 505 阅读 · 0 评论 -
工厂模式小小心得
基本概念1、interface中定义的方法访问权限自动被声明为public,也只能为public。2、抽象类可以不用实现接口中的方法3、一个子类只能存在一个父类,但可以实现多个接口4、抽象类中可以拥有自己的成员变量和非抽象的方法,接口中只能存在常量和抽象方法。门的例子:Door具备两个行为:open()和close(),用抽象类和接口没什么区别,但如果需要一个报警的功能原创 2017-05-02 15:50:34 · 303 阅读 · 0 评论 -
实现单例模式的方式有哪些
synchronized关键字锁住的是这个对象,这样的用法,在性能上会有所下降,因为每次调用getInstance(),都要对对象上锁,事实上,只有在第一次创建对象的时候需要加锁,之后就不需要了,所以,这个地方需要改进。public class Singleton { //定义一个私有的静态全局变量来保存该类的唯一实例 private static Single...原创 2016-07-14 17:16:42 · 550 阅读 · 0 评论