04 2020 档案

摘要:启用线程 与此同时还有对线程的暂停sleep,中止interrupt,等待其他线程join等。 构建线程安全的代码: 1. Race Condition 两个线程抢占公共变量。 ThreadDemo 开4个线程下载资源,观察得到的最后的总字节数。 DownloadStatus 保存下载状态 Down 阅读全文
posted @ 2020-04-29 01:32 莫等闲™ 阅读(201) 评论(0) 推荐(0)
摘要:一个接口实现的简单例子: Printer.java ConsolePrinter.java LambdaDemo.java 匿名内部类 为了快捷调用greet方法,可以使用匿名内部类来实现这个接口 由于这里只有一个需要实现的函数,所以可以使用lambda函数进行替换 在这个lambda表达式中,只调 阅读全文
posted @ 2020-04-28 16:58 莫等闲™ 阅读(121) 评论(0) 推荐(0)
摘要:Iterable 这样就可以遍历且不暴露内部成员items Iterable需要实现Iterator,而Iterator需要实现hasNext和next 其他的实现接口和类 Collection List Queue Set ArrayList PriorityQueue HashSet Linke 阅读全文
posted @ 2020-04-27 14:50 莫等闲™ 阅读(136) 评论(0) 推荐(0)
摘要:泛型类 当我们需要创建一个类,其中的参数类型,需要后期给定的时候,就需要重新更改类型,再次创建,如下: 当我们这里想要一个UserList的时候,需要将元素的类型改为User,这样还需要重复创建结构一样的类,显然有些冗余,那么如何解决这个问题,一个很poor的方法,就是声明类型时,把元素类型定为Ob 阅读全文
posted @ 2020-04-25 23:55 莫等闲™ 阅读(174) 评论(0) 推荐(0)
摘要:Exception 首先要明确的是,异常的类型包括了未检查的异常(运行时的异常),检查后的异常,错误。 当我们要自定义异常的时候,如果是未检查的异常,要继承RuntimeException,如果是检查后的异常,继承Exception。 下面是一个自定义异常的例子 InsufficientFundEx 阅读全文
posted @ 2020-04-25 10:56 莫等闲™ 阅读(213) 评论(0) 推荐(0)
摘要:简言之,Java的多态可以通过三种方式实现: 1. 重写 2. 接口 3. 抽象类和抽象方法 1. 重写 之前提到过,包括对equals和hashcode的重写,还有对于函数的重载。 3. 抽象类抽象方法: UIControl.java TextBox.java 上面的TextBox继承了抽象类,而 阅读全文
posted @ 2020-04-25 01:25 莫等闲™ 阅读(148) 评论(0) 推荐(0)
摘要:首先要提一句的是,在JAVA语言中,当我们要声明一个长整型或者单精度的数值类型的变量的时候,经常会见到在一个数字后面出现 ,`L/l`。那么为什么要加入这些标识呢? 这是因为:在Java中,当开发者输入了数字,如: ,这个数字默认的类型为 型,其支持的数据范围如下,当我们的数字大小超过了 型支持的大 阅读全文
posted @ 2020-04-22 23:51 莫等闲™ 阅读(776) 评论(0) 推荐(0)
摘要:1. 比较运算符 与大多数的编程语言中的比较运算符一样,主要包含了 这六种比较运算符。 2. 逻辑运算符 与大多数的编程语言中的比较运算符一样,主要包含了 这三种逻辑运算符,非,并,或。 这些逻辑运算符拥有截断的效果,即当前者满足一定条件,后者就不去考虑了。 3. 条件语句 在条件语句中,如果代码块 阅读全文
posted @ 2020-04-22 23:48 莫等闲™ 阅读(153) 评论(0) 推荐(0)
摘要:1. 重构 为了让之前的 程序简化,使其更符合DRY的原则。 这里就将输入数字抽取为一个函数,然后将计算贷款抽取成一个函数。 java import java.util.Scanner; public class Main { final static byte MONTH = 12; final 阅读全文
posted @ 2020-04-22 23:37 莫等闲™ 阅读(379) 评论(0) 推荐(0)
摘要:初尝 这里的 方法,由于没有形参,不存在歧义,所以可以不用 ,即注释中的形式。 在python中这样可是不行的哟,一定要加上 。 在Java10之后已经支持 了,即可以动态识别类型,但是在一些情况下不可以使用。 封装 是一个区别面向对象和面向过程编程的基本要素。 当要计算一个员工工资的时候,如果直接 阅读全文
posted @ 2020-04-22 23:00 莫等闲™ 阅读(139) 评论(0) 推荐(0)
摘要:MorgageCalculator Console.java Main.java 阅读全文
posted @ 2020-04-22 22:16 莫等闲™ 阅读(296) 评论(0) 推荐(0)
摘要:对于java中对象的比较,经常会需要对类内的 和`hashCode Generate equals&hashcode`就可以快速重写: 阅读全文
posted @ 2020-04-22 22:12 莫等闲™ 阅读(134) 评论(0) 推荐(0)