- 博客(7)
- 收藏
- 关注
原创 软件构造学习笔记6:求图中两个顶点间的最短距离
getDistance方法输入参数是两个Person对象,返回的是这两个Person对象间的最短距离。需要使用Queue接口和Map接口,Queue用于广度优先搜索,Map<Person, Integer>用于存储当前最短距离。如果求自身到自身的距离,则直接返回0。否则就先将p1入队,并向Map中加入键值对。当队列非空时,进行循环。先将队首元素x出队,当前距离等于x的当前距离+1,然后开始遍历x的人际关系列表,如果列表中的某个人tmp不在Map的键值中(相当于未访问过),就向
2021-07-07 23:00:45 339 2
原创 软件构造学习笔记5:类型转换
假设A是B的父类。例1:声明一个子类对象B,用父类A引用。然后将该对象强转为子类引用。这是可以的,第一步相当于一个子类对象,其能力被暂时削弱,有些功能使用不了。第二步相当于恢复B的全部能力,子类的所有功能又可以使用了。A a = new B();B b = (B)a;例2:声明一个父类对象A,用父类A引用。然后将该对象强转为子类引用。这个操作不被允许,会抛出ClassCastException异常。A a = new A();B b = (B)a;因此父类转子类,
2021-07-06 22:19:42 89
原创 软件构造学习笔记4:多维软件视图&软件质量目标
瞬时moment 阶段period 代码级 模块级 代码级 模块级 构造时bulid-time 源代码source code 抽象语法树AST 类图class diagram 包package 文件file 静态链接库static linking library 测试用例test case 组件图component diagram 代码变化code churn ...
2021-07-03 23:06:00 91
原创 软件构造学习笔记3-Java集合类遍历时删除需要注意的问题
这个点是老师上课讲过的,但是写实验的时候反复犯错,在此记录一下,加深印象,提醒自己。Java集合类,例如List,对其进行遍历,如果遍历时要删除元素,很容易出错。普通for循环(下标遍历):移除不完全。增强for循环:移除一个正确,移除第二个就会抛出ConcurrentModificationException。迭代器+集合类remove方法混合:移除不完全。错误示例1: public static void dropCourse6(ArrayList<String&g
2021-07-01 22:14:30 182
原创 计算机系统大作业:程序人生
计算机系统大作业目录第1章 概述1.1 Hello简介1.2 环境与工具1.3 中间结果1.4 本章小结第2章 预处理2.1 预处理的概念与作用2.2在Ubuntu下预处理的命令2.3 Hello的预处理结果解析2.4 本章小结第3章 编译3.1 编译的概念与作用3.2 在Ubuntu下编译的命令3.3 Hello的编译结果解析3.3.1 数据3.3.2 赋值3.3.3 类型转换3.3.4 算数操作...
2021-06-28 17:28:00 460
原创 软件构造学习笔记2 重写Override和重载Overload
表格比较重写和重载 重写 重载 函数声明 相同 不同 参数列表 必须不变 必须改变(个数/类型) 异常 可以减少抛出的异常/不抛出异常,不能抛出原本不抛出的异常 可以改变 规约 可以更强,不能更弱 .
2021-06-28 10:08:29 85
原创 软件构造学习笔记1 黑盒测试和白盒测试
比较项 黑盒测试 白盒测试 测试侧重方面 对程序外部行为的测试 对程序内部代码的测试 是否知晓内部实现 否 是 测试者 测试员 开发员 设计测试的时间 可以在开发前 开发后 能否发现功...
2021-06-06 21:54:58 224 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人