Java设计模式-七大架构设计原则-单一职责原则

Java设计模式-七大架构设计原则-单一职责原则

从这一专栏开始将学习设计模式,上课学习和自己总结归纳的笔记将总结出来供大家参考。
参考书籍:《设计模式就该这样学》

其他文章:

Java设计模式-UML类图 Java设计模式-七大架构设计原则-开闭原则
Java设计模式-七大架构设计原则-依赖倒置原则 Java设计模式-七大架构设计原则-单一职责原则
Java设计模式-七大架构设计原则-接口隔离原则 Java设计模式-七大架构设计原则-最少知道原则(迪米特法则)
Java设计模式-七大架构设计原则-里氏替换原则和合成复用原则 Java设计模式-创建型设计模式-简单工厂模式
Java设计模式-创建型设计模式-工厂方法模式(工厂模式) Java设计模式-创建型设计模式-抽象工厂模式
Java设计模式-创建型设计模式-建造者模式 Java设计模式-创建型设计模式-原型模式
Java设计模式-创建型设计模式-单例模式 Java设计模式-结构型设计模式-适配器模式
Java设计模式- 结构型设计模式-享元模式 Java设计模式- 结构型设计模式-外观模式
Java设计模式- 结构型设计模式-桥接模式 Java设计模式-结构型模式设计模式-组合模式
Java设计模式-行为型设计模式-观察者模式

文章目录

  • Java设计模式-七大架构设计原则-单一职责原则
    • 单一职责原则
      • 1.1单一职责原则的实际应用
        • 1.1.1没使用针对类级别的单一职责
        • 1.1.2使用针对类级别的单一职责

单一职责原则

单一职责原则(Simple Responsibility Principle SRP):不要存在一个导致类变更的原因。通俗的说,即一个类只负责一项职责。

好处:降低类的复杂度,提高程序的可读性,提高系统的可维护性,降低变更引起的风险,但是只有逻辑足够简单,才可以在代码级别上违反单一职责原则;只有类中方法数量足够少,才可以在方法级别上违反单一职责原则;

1.1单一职责原则的实际应用

1.1.1没使用针对类级别的单一职责

定义一个鸟类

  ![public class Bird {
   //鸟的移动方式方法
   public void MoveMethod(String birdName){
       if(birdName.equals("喜鹊")){
           System.out.println(birdName+"用翅膀飞");
       }else{
           System.out.println(birdName+"用脚走");
       }
   }
 }

定义一个测试类

public class Test {
   public static void main(String[] args) {
       Bird bird=new Bird();
       bird.MoveMethod("喜鹊");
       bird.MoveMethod("鸵鸟");
   }
   }

输出结果如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jY61apcN-1647937092838)(C:\Users\MateBook\Desktop\IDE、数据库系统等工具\API文档\Java设计模式)]

1.1.2使用针对类级别的单一职责

定义一个会飞的鸟类

public class FlyBird {
//会飞的鸟的方法
public void FlyMethod(String birdName){
    System.out.println(birdName+"用翅膀飞");
	}
}

定义一个只会行走的鸟类

public class WalkBird {
//只能行走的鸟的方法
public void walkBird(String birdName){
    System.out.println(birdName+"用脚走");
	}
}

定义一个测试类

public class Test {
public static void main(String[] args) {

    FlyBird flyBird=new FlyBird();
    flyBird.FlyMethod("喜鹊");
    
    WalkBird walkBird=new WalkBird();
    walkBird.walkBird("鸵鸟");

}
}

输出结果如下:

Java设计模式-七大架构设计原则-单一职责原则_第1张图片

1.2.5类图如下:说明FlyBird类和WalkBird类的职责是单一的。

Java设计模式-七大架构设计原则-单一职责原则_第2张图片

你可能感兴趣的:(Java设计模式,java,单一职责原则,架构,设计模式)