今日总结10.25

[实验任务三]:依赖倒转原则与合成复用原则

在一画图软件中提供了多种大小不同的画笔,并且可以给画笔指定不同的颜色,某设计人员对画笔进行了如上图所示的设计。通过分析,可以发现增加画笔的种类和颜色会使得系统中类的数目急剧增加,请根据合成复用原则和依赖倒转原则对上述设计进行重构。

实验要求:

1. 提交源代码;

 

具体型号类

 

public class SmallPen extends Size{

//小型

public void sizePen() {

System.out.println("小型");

}

}

public class MiddlePen extends Size{

//中型

public void sizePen() {

System.out.println("中型");

}

}

public class BigPen extends Size{

//大型

public void sizePen() {

System.out.println("大型");

}

}

具体颜色类

 

public class GreenPen extends Color{

public void colorPen() {

System.out.println("绿色");

}

}

public class RedPen extends Color{

 

public void colorPen() {

 

System.out.println("红色");

 

}

 

}

 

型号抽象类

 

public abstract class Size {

public abstract void sizePen();

}

 

 

颜色抽象类

 

public abstract class Color {

public abstract void colorPen();

}

 

钢笔

public class Pen {

//钢笔

private Size size;

private Color color;

public Size getSize() {

 return size;

}

public void setSize(Size size) {

 this.size = size;

}

public Color getColor() {

 return color;

}

public void setColor(Color color) {

 this.color = color;

}

}

 

聚合钢笔

public class MianClass {

public static void main(String[] args) {

//颜色大小随意组合

Pen pen=new Pen();

//组合小型红色钢笔

pen.setSize(new SmallPen());

pen.setColor(new RedPen());

//组合大型绿色钢笔

pen.setSize(new BigPen());

pen.setColor(new GreenPen());

}

}

 

 

2.画出重构后的类图。

posted @ 2023-10-25 22:36  庞司令  阅读(15)  评论(0)    收藏  举报