![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
文章平均质量分 81
memoryXZZ
why比how更重要
展开
-
Long类型数据吐给前端时精度丢失
现象:联调时碰见一个问题,后端吐给前端的对象信息如下:/** * 订单信息 */public class orderInfoVO { @ApiModelProperty(value = "项目订单id") private Long projectOrderId; @ApiModelProperty(value = "创建时间", dataType = "Date") private Date ctime; @ApiModelProperty(va原创 2021-04-13 14:48:52 · 294 阅读 · 0 评论 -
Java中的访问修饰符
原创 2019-07-22 19:57:19 · 57 阅读 · 0 评论 -
Java的反射
十分详细https://blog.csdn.net/lililuni/article/details/83449088转载 2019-07-31 20:26:16 · 73 阅读 · 0 评论 -
Java集合之TreeMap
一. treeMap结构(和红黑树类似)TreeMap中的元素默认按照keys的自然排序排列。对Integer来说,其自然排序就是数字的升序;对String来说,其自然排序就是按照字母表排序。如果是我们自定义的类型,如自定义了一个User类,就需要实现Comparabl接口,或者在构造函数中传入一个比较器。优先按照构造函数传入的比较器排序,只有在treeMap构造函数传入的比较器为空...原创 2019-09-05 16:50:10 · 179 阅读 · 0 评论 -
java集合之 concurrentHashMap
为何会出现concurrentHashMap背景1. 线程不安全的HashMap因为多线程环境下,使用Hashmap进行put操作会引起死循环,导致CPU利用率接近100%,所以在并发情况下不能使用HashMap。2. 效率低下的HashTable容器HashTable容器使用synchronized来保证线程安全,但在线程竞争激烈的情况下HashTable...原创 2019-09-06 21:40:32 · 129 阅读 · 0 评论 -
动态链接和静态链接
知识还是记下来比较好,不然忘了都不知道啥忘了。。静态编译就是在编译的时候把你所有的模块都编译进exe里去,当你启动这个exe的时候所有模块都加载进来了。你写小程序没问题,但程序一大,加载的过程(就是当你运行程序时初始化的过程)就比较费力动态编译就不一样,你编译的时候那些模块都没有编译进去,一般情况下你可以把那些模块都编译成dll,这样你启动程序(初始化)的时候这些模块不会被加载,而是在运行的...转载 2019-09-06 21:46:41 · 93 阅读 · 0 评论 -
java 程序编译和运行过程详解
Java程序从源文件创建到程序运行要经过两大步骤:源文件由编译器编译成字节码(ByteCode); 字节码由java虚拟机解释运行。因为java程序既要编译同时也要经过JVM的解释运行,所以说Java被称为半解释语言("semi-interpreted" language)1. 编译创建完源文件之后,程序先要被JVM中的java编译器进行编译为.class文件。java编译一个...原创 2019-09-16 13:01:54 · 1685 阅读 · 0 评论 -
Java中关于进制问题-八进制、16进制
java中数据以0开头的是八进制的。 0x 开头的数据表示的是16进制(注意:0x中的0是数字0,而不是字母O) ,x也可以大写,用0X表示十六进制。 可以使用八进制、十六进制的类型:long, int, short, byte如 012表示的就是10进制的10,2+1*8=10 0x12 表示的是10进制的18,2+16*1=18public class Test { ...原创 2019-09-17 22:12:28 · 657 阅读 · 0 评论 -
hashMap 和hashTable实现的类和接口
根据jdk1.8的源码,系统出了一个类图,这里考虑几个Map实现的类 HashTable、HashMap、TreeMap、ConcurrentHashMap、LinkedHashMap有图有真相,我们看图可以看出各个类实现的接口有 Serializable Cloneable AbctractMap HashTable √ √ Hash...原创 2019-09-21 22:07:21 · 6164 阅读 · 0 评论 -
Comparator 和 Comparable接口
1. Comparator 和 Comparable作用Comparator 和 Comparable作用:都是java的接口, 并且是用来对自定义的class比较大小的。当我们自己定义了一个对象Student:public class Student { int score; int age;}有这么一个studentList,里面包含了student1,...原创 2019-07-26 16:11:44 · 160 阅读 · 1 评论 -
java的runnable和callable
1. Runnable接口,只声明了一个 run() 方法,且无返回值2.Callabble,泛型接口,只声明了一个call() 方法,返回类型是传递进来的 V 类型,且会抛出异常public interface Runnable { public abstract void run();}public interface Callable<V> { ...原创 2019-07-31 12:49:54 · 735 阅读 · 0 评论 -
idea的图标
学习过程中,看类图或者类的结构https://blog.csdn.net/qq_35246620/article/details/64157559转载 2019-07-30 22:20:13 · 99 阅读 · 0 评论 -
java中的序列化与反序列化
序列化与反序列化一 、什么是序列化与反序列化把对象转换为字节序列的过程称为对象的序列化。把字节序列恢复为对象的过程称为对象的反序列化一个对象只要实现了Serilizable接口,这个对象就可以被序列化,java的这种序列化模式为开发者提供了很多便利,我们可以不必关系具体序列化的过程,只要这个类实现了Serilizable接口,这个类的所有属性和方法都会自动序列化。为什么需要实现Ser...原创 2018-11-08 13:55:47 · 491 阅读 · 0 评论 -
java中的三点参数
java5开始,java语言对方法参数支持的一种新写法,称为可变长度参数列表,接受的长度是0+个Object,或者是Object [],即Object数组。如果既有test(String...strings)函数,又有test()函数,我们在调用test()时,会优先使用test()函数。只有当没有test()函数式,我们调用test(),程序才会走test(String...strings)...原创 2019-03-27 19:17:33 · 810 阅读 · 0 评论 -
java位运算符、移位运算符与加减乘除运算符之间的关系
一、位运算符主要针对二进制。包括‘与 & ’、‘或 | ’、‘非 ~’、‘异或 ^ ’。1 . 与 运算符与运算符用符号“&”表示,其使用规律如下:两个操作数中,位都为1,结果才为1,否则结果为0。与运算符是二元运算符。需要了解的知识点:基本数据类型 java语言中,对应基本数据类型 在内存中所占内存空间大小 (B:byte,字节...原创 2019-05-13 18:58:38 · 3639 阅读 · 0 评论 -
java中的线程状态流转
java中的线程状态。在Thread类中有一个State的枚举类,表示当前线程所处的状态。线程状态一共有6种:新建状态 (New)线程对象被创建后,就进入了新建状态。例如,Thread thread = new Thread()。 就绪状态 (Runnable): 也被称为“可执行状态”。线程对象被创建后,其它线程调用了该对象的start()方法,从而来启动该线程。例如,threa...原创 2019-05-07 17:41:55 · 384 阅读 · 0 评论 -
Java泛型
Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。一. 为什么需要泛型?如下代码所示,我们创建一个list,并向其中加入两个字符串类型的值,随后加入Integer值。此时编译器不会报错,因为此时List默认的类型是Object,随后我们忘记之前加入了Integer数据,之后我们取出元素转为S......原创 2019-05-13 16:45:09 · 155 阅读 · 1 评论 -
写算法题目时,java的单目运算符 ++,-- 学习
今日写一个算法题目:二维数组中的查找(剑指Offer题目)题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。如: 找数据10,返回为true,且位于第三行第三列考虑从右上角开始,用递归的方法找:代码如下:public class Test { ...原创 2019-07-22 20:08:07 · 258 阅读 · 0 评论 -
java中map里的key按我们插入进去的顺序输出
TreeMap的顺序是自然顺序(如整数从小到大),也可以指定比较函数。但不是插入的顺序。LinkedHashMap,内部有一个链表,保持插入的顺序。迭代的时候,也是按照插入顺序迭代。HashMap并不能保证按插入的顺序...原创 2019-07-20 12:54:57 · 974 阅读 · 0 评论 -
Java的垃圾回收
一. 垃圾收集包括:标记算法(如何判断对象已死)和回收算法二. 标记算法引用计数器法和可达性分析(GC roots)引用计数法: 两个对象互相引用 A和B 可达性分析,可作为GCroots的对象:java虚拟机栈中引用的对象、本地方法栈中引用的对象、方法区中静态成员或常量引用的对象。三. 回收算法1、标记-清除算法 mark-sweep分为两个阶段,标记和清除。首先标...原创 2019-07-25 09:31:29 · 61 阅读 · 0 评论