随笔分类 -  java

有关java源码以及java代码相关的记录总结
摘要:背景 mac 上安装了多个 jdk 版本,而 MacOS 默认会选择在 /Library/Java/JavaVirtualMachines 目录下的最新版本作为当前JDK版本,但是我们有的时候又不想使用当前这个默认版本,接下来解决如何随意切换 jdk 版本的骚操作了。 查看 macOS 下 JDK 阅读全文
posted @ 2022-02-22 17:29 星火燎原智勇 阅读(576) 评论(0) 推荐(0)
摘要:1、Object TO List<?> java中如果需要将一个object转成list,大部分人会直接使用强制类型转换:(List<String>) obj这样。这样强制转换编译会提示Unchecked cast: 'java.lang.Object' to 'java.util.List<jav 阅读全文
posted @ 2021-05-19 23:39 星火燎原智勇 阅读(4118) 评论(0) 推荐(0)
摘要:一、数组初始化 1、静态初始化 int[] intArr = new int[]{1,2,3,4,5,9}; 2、简化静态初始化 String[] strArr = {"张三","李四","王二麻"}; 3、动态初始化 int[] price = new int[4]; price[0] = 99; 阅读全文
posted @ 2021-05-18 23:30 星火燎原智勇 阅读(247) 评论(0) 推荐(0)
摘要:java 类型 占用字节数 byte 1 short 2 char 2 int 4 float 4 long 8 double 8 string 英文字符占用 1 个字符 中文字符 GBK 编码占用 2 个字符,UTF-8 占用 3 个字符 阅读全文
posted @ 2021-05-18 21:37 星火燎原智勇 阅读(139) 评论(0) 推荐(0)
摘要:命令参数 备注 mvn -v --version 显示版本信息; mvn -V --show-version 显示版本信息后继续执行Maven其他目标; mvn -h --help 显示帮助信息; mvn -e --errors 控制Maven的日志级别,产生执行错误相关消息; mvn -X --d 阅读全文
posted @ 2021-05-18 21:33 星火燎原智勇 阅读(105) 评论(0) 推荐(0)
摘要:一、堆大小设置 JVM 中最大堆大小有三方面限制: 1. 相关操作系统的数据模型(32-bt还是64-bit)限制; 2. 系统的可用虚拟内存限制; 3. 系统的可用物理内存限制。 32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Linux CentOS系统,JDK1.8.1 阅读全文
posted @ 2018-08-16 11:11 星火燎原智勇 阅读(507) 评论(0) 推荐(0)
摘要:合理利用线程池能够带来三个好处。 第一:降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。 第二:提高响应速度。当任务到达时,任务可以不需要等到线程创建就能立即执行。 第三:提高线程的可管理性。 线程是稀缺资源,如果无限制的创建,不仅会消耗系统资源,还会降低系统的稳定性,使用线程池 阅读全文
posted @ 2017-10-05 21:27 星火燎原智勇 阅读(449) 评论(0) 推荐(1)
摘要:问题列表: 1. Java中子类中可以有与父类相同的属性名吗? 2. Java中子类继承了父类的私有属性及方法吗? 3. Java中抽象类到底能不能被实例化? 4、字符串分隔遇到特殊需要转义 1. Java中子类中可以有与父类相同的属性名吗? JAVA里,子类里的属性名与父类的一个属性名一样,那么就 阅读全文
posted @ 2017-03-29 22:19 星火燎原智勇 阅读(736) 评论(0) 推荐(0)
摘要:concurrentHashMap 1.8 与 1.7 比较请查看:从ConcurrentHashMap演进看 java多线程核心技术 1. Concurrent相关历史 JDK5中添加了新的concurrent包,相对同步容器而言,并发容器通过一些机制改进了并发性能。因为同步容器将所有对容器状态的 阅读全文
posted @ 2017-02-16 22:30 星火燎原智勇 阅读(4454) 评论(0) 推荐(0)
摘要:声明:以下源代码使用的都是基于JDK1.8_112版本 1. ArrayList源码解析 <1. 集合中存放的依然是对象的引用而不是对象本身,且无法放置原生数据类型,我们需要使用原生数据类型的包装类才能加入到集合中去 <2. 集合中放置的都是Object类型,因此取出来的也是Object类型,那么必 阅读全文
posted @ 2017-02-14 17:31 星火燎原智勇 阅读(3353) 评论(0) 推荐(0)
摘要:浮点数会有精度损失这个在上大学的时候就已经被告知,但是至今完全没有想明白其中的原由,老师讲的时候也是一笔带过的,自己也没有好好琢磨。终于在工作的时候碰到了,于是google了一番。 问题: 对两个double类型的值进行运算,有时会出现结果值异常的问题。比如: 输出: 39.989999999999 阅读全文
posted @ 2017-02-12 23:16 星火燎原智勇 阅读(2690) 评论(0) 推荐(0)
摘要:Java的serialization提供了一种持久化对象实例的机制。当持久化对象时,可能有一个特殊的对象数据成员,我们不想用serialization机制来保存它。为了在一个特定对象的一个域上关闭serialization,可以在这个域前加上关键字transient,transient是Java语言 阅读全文
posted @ 2017-02-09 16:32 星火燎原智勇 阅读(6128) 评论(2) 推荐(0)
摘要:1. 随机函数 Math.random() Math.random(); 取值范围是 [ 0.0,1.0 ) 的左闭右开区间。具体源代码如下所示: Math.random()是生成0~1之间的小数(double类型的),类似生成的结果如下图所示: 最上面的两个图贴出来的是Math.random()的 阅读全文
posted @ 2017-01-12 15:12 星火燎原智勇 阅读(7784) 评论(0) 推荐(0)