Java软件构造
文章平均质量分 78
Aleafy
这个作者很懒,什么都没留下…
展开
-
如何对HashMap进行排序
问题描述这个问题从字面上看会有点奇怪,毕竟HashMap是按哈希值存储元素的,每个元素的位置是固定的,所以无法像list一样可以通过索引值list.get(i)去获取元素,由于位置由哈希值确定,也谈不上排序。但是,问题就在于确实会遇到一些情形,比如我定义了一个map对象Map<Student, Integer> map = new HashMap<>();map是由学生类作为key,整型类作为value的,我的toString函数里面,希望它能够按照Integer(实际意义原创 2021-07-06 23:56:47 · 7623 阅读 · 3 评论 -
多维软件视角——三维度八视图
多维软件视角三个维度:阶段:Build(构造阶段),Run(运行阶段)层次:代码层面,构件层面时间:时刻,一段时间视角一: Build-time, moment, and code-level view词汇层面:源代码语法层面:抽象语法树(AST,Abstract Syntax Tree)语义层面:类图视角二: Build-time, period, and code-level viewCode churn:代码变化(一段时间)视角三: Build-time, moment, an原创 2021-07-06 17:31:39 · 406 阅读 · 0 评论 -
如何用Junit测试
导入JUnit的包右键点击java项目→Build Path → Configure Build PathAdd Library → JUnit选择Junit的版本→ Finish → Apply and close新建一个Junit测试类在java包上点击右键→New→Other(讲道理熟悉了以后,直接new一个普通的class,再自己导入junit包和这个操作也是一样的)选择Junit Test Case给测试类取名,选择class under test点击Finish测试原创 2021-07-06 16:55:52 · 649 阅读 · 0 评论 -
Java_如何编写自己的泛型类
泛型泛型,即参数化类型,类似于方法中将变量参数化,泛型是将原来定义的具体的类型参数化。使用泛型的需求Java中为什么要使用泛型,是因为泛型使用起来非常之方便,泛型类/方法针对于面向复用的开发。当我们想让一个类/方法同时适配于多种数据类型,这将大大省去我们编写重复代码的时间。举一个常见的例子说明:List<Integer> ilist = new ArrayList<Integer>();List<String> slist = new ArrayList原创 2021-07-06 15:57:32 · 1787 阅读 · 0 评论 -
Java中的重载(Overload)机制详解及与重写(Override)的区别
重载重载的定义多个方法具有同样的名字,但有不同的参数列表或返回值类型重载的好处方便client(客户端)调用,client可用不同的参数列表,调用同样的函数比如想要定义加法的方法, 让它可以计算不同类型的数之和,有不同类型的返回值,可以如下定义:public int add(int x, int y) { return x + y; }public double add(double x, double y) { return x + y; }如果没有重载机制,那么想要定义两个原创 2021-06-30 16:38:44 · 702 阅读 · 0 评论