软件构造
文章平均质量分 73
postKamous
这个作者很懒,什么都没留下…
展开
-
面向对象的LSP原则和行为子类型
LSP原则LiskovSubstitutionPrinciple是OOP的SOLID原则中的"L",叙述如下如果对于一个类T的对象t有性质q(t)成立,那么对于类S的对象s,q(s)也成立,类S是类T的子类.在应用上,这就是说任何父类对象出现的地方都可以用一个子类对象替代,这是为了客户能够在不了解众多子类型差异的情况下能够以一种统一的方式正确地处理所有子类型对象.例如,在我们最喜欢的Rectangle和Square类的问题中,我们认为父类T就是Rectangle,子类S就是Squar..原创 2021-07-06 17:55:10 · 334 阅读 · 0 评论 -
Java对象的等价
在Java中通常使用equals方法和hashCode方法来直接地或间接地判断两个对象是否等价,并且在Java的一些库中有可能直接调用这些函数来判断等价性,例如在HashSet和HashMap中就通过调用hashCode方法来获得一个对象的哈希值,从而区分对象和维护数据结构.然而Java为对象设置的默认equals方法和hashCode方法都是基于对象地址的,所以我们有必要根据类的各个域和实际需求重新设计equals方法和hashCode方法.根据实现的不同,我们分可变类和不可变类讨论.不可变类eq原创 2021-06-29 00:23:47 · 187 阅读 · 0 评论 -
记录第一次使用IDEA创建不使用框架的Java项目和Junit的使用
准备下载安装JDK和IDEA都没有什么障碍,在将JDK路径加入环境变量后,新建IDEA项目的时候可以直接选择相应版本的JDK.进入项目后先配置一下Junit.IDEA默认内置了Junit插件,如果在importorg.junit处出错可以通过quickfix将Junit包添加到与src目录同级的lib目录中.也可以通过其他方法添加Junit,可以从官方网站上下载Junit和hamcrest包到本地,并在File->ProjectStructure->Modules里面将这两...原创 2021-05-10 17:19:38 · 332 阅读 · 0 评论 -
Java ADT总结
面向对象基本知识抽象函数和抽象类Java中使用了一种抽象的技术,继承和实现Java有两种继承类的方式原创 2021-06-06 21:47:05 · 801 阅读 · 2 评论 -
Java文件输入输出总结
文件输入在Java中不论文件输入还是输出都会用到File类,File类是一个代表文件或目录的类,通常使用路径来初始化,允许使用绝对路径和相对路径.File inFile = new File("C:\\Program Files\\Java\\");File inFile1 = new File("../src/txt/1.txt");在创建好File对象后,我们有几种选择来从文件读入:Scanner类,FileReader类,FileInputStream类.这几个类的构造函数都可以以Fi原创 2021-05-17 19:16:40 · 2144 阅读 · 0 评论