Java理论学习
码破苍穹
中国普通青年
展开
-
java Timer研究,似乎不是并行的?
package Thread测试;import java.util.Timer;import java.util.TimerTask;public class TestCode { static volatile boolean flag0 = false; static volatile boolean flag1 = false; static volatile boolean flag2 = false; static boolean flag=tr...原创 2020-05-26 11:09:10 · 199 阅读 · 0 评论 -
java之对字典数据按照键值进行排序
逆序(从大到小排序):public List<Map<String, Integer>> sortByValue(HashMap<String, Integer> hm) { // HashMap的entry放到List中 List<Map.Entry<String, Integer> > list...原创 2020-03-05 14:28:24 · 2647 阅读 · 0 评论 -
java,Colletions.sort实现ArrayList降序排列
Collection.sort()是实现升序排列,然而java里没有Python里reverse=True的这种选项。。想搜有没有现成的写法,然而并没有。网上一堆抄来抄去的,最后还是得靠自己写。package ArrayList排序;import java.util.ArrayList;import java.util.Collections;import java.util.C...原创 2019-12-12 19:55:38 · 401 阅读 · 0 评论 -
java重写equals和hashcode的值
https://zhuanlan.zhihu.com/p/50206657原创 2019-12-02 12:49:40 · 91 阅读 · 0 评论 -
关于注解的不错的文章
1、https://blog.csdn.net/javazejian/article/details/718606332、https://blog.csdn.net/briblue/article/details/738240583、https://www.zhihu.com/question/47449512/answer/6582280924、讲到了自定义注解https://...原创 2019-11-22 15:05:02 · 87 阅读 · 0 评论 -
《java编程思想》第十七章回顾
1、不能用Collection自带的fill方法填充容器。其结果是复制同一个对象的引用来填充了整个容器,可以用generator接口。2、由来源于背后由固定尺寸的数据结构支持的容器,当将其转换为List后,对于任何改其大小的操作,都将带来异常。3、Set中有HashSet、TreeSet、LinkedHashSet其中3种。其中HashSet是最常用的。存入HashSet的元素需要定义Ha...原创 2019-03-08 20:44:25 · 201 阅读 · 0 评论 -
《java编程思想》第十一章回顾
本章介绍了很多API,此文不再复述。1、数组具有固定的尺寸。为了解决这个问题,java提供了一系列的容器类,包括List、Set、Queue和Map。它们都可以自动的调整自己的尺寸。2、形如ArrayList<Apple>,使用泛型,定义了一个保存Apple对象的ArrayList。3、Set和Map都有Hash...、Tree...、LinkedHash...的前缀。Ha...原创 2019-02-26 20:41:56 · 172 阅读 · 0 评论 -
泛型经典文章
比较详细的介绍了泛型的基础https://blog.csdn.net/s10461/article/details/53941091比较详细的介绍了泛型的通配符以及上下限问题https://www.cnblogs.com/wxw7blog/p/7517343.html介绍了泛型的协变参数类型https://blog.csdn.net/weixin_40134367/articl...原创 2019-03-01 21:11:28 · 101 阅读 · 0 评论 -
《java编程思想》第十五章回顾
本章内容极为繁多。到目前为止都没有看完。同时感觉部分内容有些生僻。。所以先行总结了吧!1、泛型实现了参数化类型的概念,使代码可以用于多种类型,而不是一个具体的接口或者类。2、泛型类的形式是普通类后面加一个<T>,其中T就是类型参数。在泛型类的内部,如果声明了形如一个 private T a,这种,那么就是声明了一个T类型的a变量的意思。如果T是String,那么就是 Strin...原创 2019-03-04 22:19:10 · 176 阅读 · 0 评论 -
《java编程思想》第十二章回顾
1、异常处理是Java中唯一正式的错误报告机制。2、使用try快捕获可能出现的异常,会在堆上new一个异常对象并自动弹出引用(throw),之后再catch接回。这时就是所谓的异常处理程序接管程序。3、标准句式是try {//可能有异常的语句}catch(Type1 id1) {//处理1型异常}catch(Type2id1) {//处理2型异常}finally {//总...原创 2019-02-28 15:13:45 · 144 阅读 · 0 评论 -
java 回调好文章
https://www.cnblogs.com/snowbook/p/5802804.html https://www.cnblogs.com/xrq730/p/6424471.html 对钩子的定义:https://www.cnblogs.com/yanlong300/p/8446261.html原创 2019-01-20 22:05:13 · 93 阅读 · 0 评论 -
java 协变类型思考
含义:1、协变类型返回也是覆盖方法的一种,jdk5开始支持的一种:子类覆盖方法返回可以是子类返回的子类,这个比较拗口2、Java5.0放宽了这一限制,只要子类方法与超类方法具有相同的方法签名,或者子类方法的返回值是超类方法的子类型,就可以覆盖。代码实例:(https://blog.csdn.net/huangwenyi1010/article/details/53454542)p...原创 2019-01-08 14:04:47 · 377 阅读 · 0 评论 -
《java编程思想》第九章回顾
一、抽象方法仅有声明没有方法体。包含抽象方法的是抽象类(但抽象类中不一定全是抽象方法,对于给出实现的具体类,在继承时可以不用管它,像普通的子类继承基类一样处理)。二、继承抽象类时,如果想实例化,就要继承其所有抽象方法,否则只能继续抽象类。三、interface产生一个 完全 抽象的类。其使用原因是1、向上转型为多个基类型。2、防止客户端程序员创建该类的对象。四、同一个接口可以用多种...原创 2019-01-18 14:16:52 · 135 阅读 · 0 评论 -
《java编程思想》第七章回顾
一、一开始就提出了复用代码的两大思路:组合(在新类中产生现有类的对象)和继承(按照现有类的方式创建新类)。二、没有默认的基类构造器,或者想用一个带参数的构造器,则必须用super显式调用基类构造器。三、代理(暂时略过)四、向上转型:把子类转型为父类。此书认为,需要向上转型,则用继承而不是组合。初级版:https://blog.csdn.net/guchenjun789/articl...原创 2019-01-12 16:30:39 · 165 阅读 · 0 评论