软件构造
文章平均质量分 63
TC_Ning
这个作者很懒,什么都没留下…
展开
-
软件构造blog5
LSP可替换原则 LSP可替换原则是第九章中可谓最重要的一个概念,由MIT计算机科学实验室的Liskov在1987年的OOPSLA大会上的一篇文章中提出,主要阐述有关继承的一些原则,故称里氏替换原则。 lsp原则的定义和主要思想如下:由于面向对象编程技术中的继承在具体的编程中过于简单,在许多系统的设计和编程实现中,我们并没有认真地、理性地思考应用系统中各个类之间的继承关系是否合适,派生类是否能正确地对其基类中的某些方法进行重写等问题。因此经常出现滥用继承或者错误地进行了继承等现象,给系统的后期维护带来了原创 2021-07-07 21:12:48 · 125 阅读 · 0 评论 -
软件构造blog4
这里对ADT中的几个重要概念进行一些总结,ADT的思想可谓贯穿这门课的始终,其中包含的表示泄漏、抽象函数AF、表示不变量RI等特性,以及mutable,immutable的概念也是在实验中多次使用。 抽象函数AF:表示空间R和抽象空间A之间映射关系的函数,即如何去解释R中的每一个值为A中的每一个值。满足以下特征: 满射、非单射、 未必双射 (因为R中的部分值并非合法的, 在A中无映射值) 表示不变性RI:某个具体的“表示”是否是“合法的” §,也可将RI看作:所有表示值的一个子集,包含了所有合法的原创 2021-07-06 23:50:47 · 75 阅读 · 0 评论 -
软件构造blog3
关于重写equals方法和hashCode方法 在Lab3中,自己设计了Employee,Process,Course三个类分别来表示职工、进程、课程。并且在其他类中用到了对这三个类的对象进行判相等的操作,这就需要重写equals方法以及hashCode方法。 equals()和hashCode()这两个方法属于Object类,而Object类是所有类的父类,因此所有的类都继承了这两个方法。Object类的equals()方法代码如下: public boolean equals(Object ob原创 2021-07-05 23:59:48 · 112 阅读 · 0 评论 -
软件构造blog2
Java 8 在java.time包下提供了很多新的 API。以下为两个比较重要的 API: (一)LocalDate LocalDate是日期处理类,具体API如下: 关于实验中用到的日期、时间有关的类的整理。 Java 8通过发布新的Date-Time API (JSR 310)来进一步加强对日期与时间的处理。 在旧版的 Java 中,日期时间 API 存在诸多问题,其中有: 非线程安全− java.util.Date 是非线程安全的,所有的日期类都...原创 2021-07-03 20:18:16 · 72 阅读 · 0 评论 -
软件构造Lab1问题总结
一、java基础知识 由于之前没有使用过java语言,实验中对java一些语法不太了解,在这里整理了实验过程中用到的一些语法 (一)异常机制 (二)流和文本输入输出 BuffedWriter()缓冲,OutputStreamWriter()建立流与Writer之间的桥梁,可写入ascii,gbk等编码方式(自动由unicode转换) 示例代码如下: //从文件读入 BufferedReader in=null; in = new BufferedReader( new InputStrea原创 2021-05-29 23:24:53 · 131 阅读 · 0 评论