我的java设计模式 总结 汇总与设计原则

汇总

最近复习完了23种设计模式,也算是都过了一遍。参考其他网上资料对23种设计模式进行一下汇总总结吧。

分类

23种设计模式可分为3大类。

创造型

结构型

行为型

面向对象的六大原则

对于面向对象的指导思想:

  • 可维护性 Maintainability
    • 再修改功能的过程中 ,修改的地方越少,可维护性就越高
  • 可复用性 Reusability
    • 代码可以以后被重复使用
    • 构建与总结自己的类库
  • 可扩展性 Extensibility Scalability
    • 添加新功能无需或者少量修改原有代码
  • 灵活性 Flexibility Mobility Adaptability
    • 通过接口灵活调用

1. 单一职责原则 Signle Responsibility Principle

  • 一个类不要写太大,只负责一件事情或者只负责一类事情,要尽可能的纯粹。
  • 高内聚 低耦合

2. 开闭原则 Open Close Principle

  • 对扩展开放,对修改关闭
    主要思想就是可以再补修改原来代码的情况下进行扩展
  • 抽象化,其实现的核心为 多态

3. 里氏替换原则 Liscov Substitution Principle

  • 再使用父类的时候这个父类是可以被子类进行替换的。这里是继承的概念。

代码伺候

class A{
	public void doit(){
		System.out.println("hello ...");
	}
}

class B extends A{
	public void doit(){
		System.out.println("hello  word...");
	}
}

这个里氏替换关键点在于

A a =new A();
a.doit();

A a =new B();
a.doit();

中的new A() 是可以完全替换为new B()来实现的。对于下一步的a.doit()是没有任何影响的(这里指影响是代码构建的影响,不是运行结果的影响) 即子类可以替换父类
这种就是里氏替换原则

4. 依赖倒置原则 Dependency Inversion Principle

  • 面向抽象,而不是依赖具体
  • 简单来说就说面向接口编程

5. 接口隔离原则 Interface Segregation Principle

  • 每一个接口都只干跟自己有关的事情
  • 避免实现类实现不必要的方法
  • 与单一原则 意义相同,但是这里指的是接口是方法,单一原则指的是对象

6.迪米特法则 low of demeter

尽量不要访问其他类或者不相关的类
这个法则中指定了都有哪些对象是相关的

  • 当前对象本身 this
  • 以参数形式传入到当前方法中的类对象,
  • 当前对象的成员对象
  • 如果有一个成员对象是集合,那么也包含集合中的元素
  • 当前对象中所创建出来的对象
    和其他类的耦合变低
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值