摘要:jar与Runnable jar区别 1、导出jar:导入本模块class文件,相关依赖一般默认不会导出。比如junit4.9,依赖的hamcrest-core-1.1.jar不会在junit4.9中 2、导出,见名知意,即可运行的jar。相关的依赖和配置文件等全部导出到jar里面,程序有main方
阅读全文
摘要:先++是先+1再参与表达式运算,后++是先参与表达式运算,当前语句代码(分号标识)执行完成后再加1. 源码和输出结果 源码如下 package top.lishuoboy.study; public class BBB { public static void main(String[] args)
阅读全文
摘要:初次遇见 native是在 java.lang.Object 源码中的一个hashCode方法: 1 public native int hashCode(); 为什么有个native呢?这是我所要学习的地方。所以下面想要总结下native。 回到顶部 一、认识 native 即 JNI,Java
阅读全文
摘要:你也可以在程序里试试打印 Runtime.getRuntime().maxMemory() 的值 看看是多少 官网说明: https://docs.oracle.com/javase/8/docs/technotes/guides/vm/gctuning/parallel.html#default_
阅读全文
摘要:问题: 既然在触发Full GC的时候,年老代和持久带都会被清理,那么为什么还会出现OOM问题? 而且,对于强引用,当内存空间不足,Java虚拟机宁愿抛出OutOfMemoryError错误,使程序异常终止,也不会靠随意回收具有强引用的对象来解决内存不足问题。 那么Full GC机制的存在有何意义?
阅读全文
摘要:概述 系统唯一ID是我们在设计一个系统的时候常常会遇见的问题,也常常为这个问题而纠结。生成ID的方法有很多,适应不同的场景、需求以及性能要求。所以有些比较复杂的系统会有多个ID生成的策略。 分布式ID的特性 唯一性:确保生成的ID是全网唯一的。有序递增性:确保生成的ID是对于某个用户或者业务是按一定
阅读全文
摘要:从学习Java的第一天起,我们就知道Java是一种面向对象语言,而学习Java的第二天,我们就知道了面向对象的三大基本特性是:封装、继承、多态。 所以,对于很多开发者来说,继承肯定都是不陌生的。但是,继承一定适合所有的场景吗?毫无忌讳的使用继承来做代码扩展真的好吗? 为什么《阿里巴巴Java开发手册
阅读全文
摘要:在Java中,对象的生命周期包括以下几个阶段: 1. 创建阶段(Created) 2. 应用阶段(In Use) 3. 不可见阶段(Invisible) 4. 不可达阶段(Unreachable) 5. 收集阶段(Collected) 6. 终结阶段(Finalized) 7. 对象空间重分配阶段(
阅读全文
摘要:今天看了下源码,居然发现ArrayList初始容量并不是10。而是0,一脸蒙逼,印象中默认容量是10的。后来百度了一下。果然改了 参考这个吧,懒得写了 https://blog.csdn.net/yin18827152962/article/details/82808325
阅读全文
摘要:登录不加密 明文 用户名+密码登录。 1、问题:用户密码等隐私泄露 解决:隐私信息加密 方案:RSA非对称加密:客户端用公钥对密码加密;服务器用私钥解密 2、问题:请求参数金额额被篡改 解决:MD5加密 方案:客户端将用户名和金额拼一个字符串然后用MD5加密生成字符串s1传给服务器;服务器用也将用户
阅读全文
摘要:在线Cron表达式生成器 : http://cron.qqe2.com/ Spring - Quartz - cronExpression中问号(?)的解释 @Scheduled注解的使用这里不详细说明,直接对8个参数进行讲解。 参数详解 1. cron 该参数接收一个cron表达式,cron表达式
阅读全文
摘要:前言: Java异常,大家都很熟悉。但是对于具体怎么分类的,JVM对其怎么处理的,代码中怎么处理的,应该怎么使用,底层怎么实现的等等,可能就会有些不是那么清晰。本文基于此详细捋一下异常类型,实现以及使用时应怎么注意。 一、异常实现及分类 1.先看下异常类的结构图 上图可以简单展示一下异常类实现结构图
阅读全文
摘要:https://blog.csdn.net/chenchunlin526/article/details/69939337
阅读全文
摘要:主要版本更新时间备注v1.02015-08-01首次发布v1.12018-03-12增加新技术知识、完善知识体系v2.02019-02-19结构调整,更适合从入门到精通;进一步完善知识体系; 新技术补充; 一、基础篇 面向对象 什么是面向对象 面向对象、面向过程 面向对象的三大基本特征和五大基本原则
阅读全文
摘要:JDK8从2019年1月开始就要收费了,怎么办呢? 其实这个问题本身就是有问题的,因为收费的并不是JDK8 , 而是JDK8后续的update (更新) 。 什么是update? 如果你下载过JDK, 就会看到那些8u191, 8u192这样的东西,191,192就是update 的编号。 这些up
阅读全文
摘要:javajavascript二进制0b0b八进制00o十进制 十六进制0h0h javaDeno int bValue = 0b10; int oValue = 010; int dValue = 10; int hValue = 0x10; System.out.println("bValue==
阅读全文
摘要:Java 5,6,7,8,9,10,11新特性超详细总结 java5 1.泛型 (Generics) List<Integer> list=new ArrayList<Integer>(); 2.增强循环(Enhanced for Loop) 3.自动封箱拆箱(Autoboxing/Unboxing
阅读全文
摘要:编辑文件 vim /etc/profile 添加以下两行代码 # add by lishuoboy 2018-12-19 export JAVA_HOME=/usr/local/jdk/jdk1.8.0_191 export PATH=$JAVA_HOME/bin:$PATH # add by li
阅读全文
摘要:0 Java版本使用占比 毫无疑问,Java8被广泛用于生产环境! Java 9和Java 10的使用率非常低,不到5%。 2017年,Java 7和更早的版本的数量大约是24.4%,现在是10.6%——所以生态系统显然正在升级,主要是升级到Java 8。 1 Spring版本使用占比 Spring
阅读全文