/** * 创建一个类,该类有一个run方法。输入运行的车型打印 车型 正在行驶 * 该类违反了单一设计原则如果我要让自行车在人行道上行驶,轮船在水里行驶 这样就要进行整体修改。这样一个方法当了各种交通工具,违反单一性。非常不方便扩展 */ public class SinglePrinciple { public static void main(String[] args) { new SinglePrinciple().run("自行車"); new SinglePrinciple().run("轮船"); new SinglePrinciple().run("飞机"); }
public void run(String str){ System.out.println(str + " 正在行驶"); } }
/** * 创建三个类一个类负责起对应的功能 * 该种方法改动太大 */ class Bicycle{ public void run(){ System.out.println("自行车在人行道上行驶"); } } class Aircraft{ public void run(){ System.out.println("飞机在天上飞"); } } class Steamer{ public void run(){ System.out.println("轮船在水中行驶"); } }
/** * 该种方法在方法级别上遵循了单一设计原则 */ class SinglePrinciple2{
public void runSteamer(){ System.out.println( " 轮船正在行驶"); }
public void runAircraft(){ System.out.println("飞机"); } }