- 博客(4)
- 收藏
- 关注
原创 软件构造Lab3总结
本次lab3给出了三个问题来给予我们解决,我们需要通过总结它们的共性进行可复用性和可维护性的设计,并针对其个性进行方案五,写出三个不同维度的接口进行操作。首先是共性,共性上来说,我们都可以将其看成区间的分配问题,无论是哪一个都是将一个大区间分配给一些元素。因此针对此事实我们可以选择编写IntervalSet和MultiIntervalSet,分别表示一元素匹配一区间以及一元素匹配多区间,这是三个问题的共性,我们将其总结并编写在这俩类中。当然这仨更多的还是差异。第一个问题,区间是必须被完全填充的,而且
2021-07-09 23:44:21
72
原创 软件构造复习:多个设计模式的优缺点
1 工厂模式:优点:1 .一个调用者创建对象方便 2 .扩展性高,如果想增加一个产品,只要扩展一个工厂类就可以。 3 .屏蔽产品的具体实现,调用者只关心产品的接口。缺点:每次增加一个产品时,都需要增加一个具体类和对象实现工厂,使得系统中类的个数成倍增加,在一定程度上增加了系统的复杂度,同时也增加了系统具体类的依赖。2 适配器模式:优点:1 .可以让任意两个没有关联的类一起运行。 2 .提高了类的复用。 3 .增加了类的透明度。 4 .灵活性好。缺点:1 .过多地使用适配器,会让系统...
2021-07-09 12:55:10
313
原创 关于可变数据类型和不可变数据类型
首先看一下两者的特点:不可变数据类型:一旦被创建,其值不改变。可变数据类型:可以改变自己的值。这样讲可能比较抽象,这里我们可以用代码进行理解。 Integer x=123; Integer y=x; y+=3;这里由于x,y是不可变数据类型,y=y+3时,y指向了新的地址,所以x并不会随着y的改动而进行改变。所以最终结果x=123 ,y=126这里再看一下StringBulider ,代码如下: final StringBuilder sb = new String
2021-07-06 23:51:28
356
原创 HIT CSAPP 大作业
计算机系统大作业题 目程序人生-Hello’s P2P 专 业 计算机类学 号 1190200921班 级1903012学 生 徐放 指 导 教 师史先俊 计算机科学与技术学院2021年5月摘 要本文介绍了hello的...
2021-06-28 13:39:57
231
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人