- 博客(7)
- 资源 (1)
- 收藏
- 关注
原创 第一章 文字和语言vs数字和信息
历史起源 远古时代,动物们是通过吼声来传递信息的,吼声的特征蕴含了一定的信息,如有食物,表达敌意等。这是信息最简单的表示传播方法。 但是当信息开始变得复杂多样时,比如: 我去追那只快病死的鹿,把他赶到东边,你在东边守着 我去追那只快病死的鹿,把他赶到西边,你在西边守着 我去追那只小鹿,把他赶到悬崖上,你在那守着 你去追那只快病死的鹿,把他赶到西边,你在西边守着 此时如果再使用吼声来表示上面的情况就有点无能为力了,因此我们的祖先将“我”,“你”,“东边”,“西边”等意思抽象出来,通过它们的排列来表示上述的
2021-07-19 22:59:43
164
原创 final字段与构造函数
对重复实例化对象的处理引入分析需求分析功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 引入 在第一次软件构造实验中,遇到了这样一个需求:设计一个Person类,其中只有一个字段:String name,并且Person对象的名字不
2021-07-02 15:04:25
429
原创 数理逻辑分析反证法
关于必要性的证明我有点疑问,这里真的证明了A->B吗? 因为只证明了:当B不成立的时候,A与B的否命题会产生矛盾,所以就认为B的否命题为假,因此证明B为真命题。 后来想到运用数理逻辑的方法来证明:反证法得出A∧﹁B为假,能否得出A->B。 求解思路如下: 因为数理逻辑过去一个学期了,所以只记得一点了 ...
2021-06-14 23:34:59
504
原创 hashCode,equals与==
引入 前几天软件构造课上讲了equals,课上提到如果重写了equals方法,那么也建议重写hashCode方法。我感觉这里我是懂非懂,于是优快云查了一下,整理一下自己的看法。 重点写== vs equals;hashCode,equals的作用;想要重写应该怎么写,没重写会出现什么情况。 == vs equals == 在Java中使用**==**均是用来表示判断,如果是基本数据类型,相等返回true,不等返回false。如果是引用数据类型,那么便判断引用地址是否相同,相同返回true,不等返回fals
2021-06-04 16:26:47
179
2
原创 软件构造课程的意义(一):编程规范
引入 软件构造课上我们学了很多编程规范 (无特殊含义,就是代指写代码的注意事项)。 有些规范不遵守会报错,或者出现错误结果,这个我觉得与基础语法并无区别。 还有些规范违反的话,不仅没有提示,反而也能得到正确的结果。比如: 表示泄露。比如所有字段设置为public,getter函数直接返回mutable属性的引用等等。我验证过了,这是可以的。 不写规约和测试。显然可以。 还有某些课上没提到过的。 随意命名,没有使用成套的命名规范,或者混用。 那这些不影响得到正确结果的编程规范有意义吗?我认为
2021-06-02 18:02:30
292
哈尔滨工业大学形式语言与自动机
2021-08-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人