![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Java
文章平均质量分 55
Java
amunamuna
走得很慢,但会一直前行~
展开
-
日常梳理-Java
文章目录基础知识常用开源工具类编码注意事项ThreadPoolExecutorvolatile、synchronized、ReentrantLock、Atomic原子类、CountDownLatchHashtable、HashMap、ConcurrentHashMap、ConcurrentSkipListMap对比 基础知识 java 常用开源工具类 常用开源工具类 编码注意事项 java编码注意事项 ThreadPoolExecutor ThreadPoolExecutor volatile、synchr原创 2020-07-27 11:02:18 · 125 阅读 · 0 评论 -
日常梳理-常用代码
代码总结原创 2022-12-19 17:55:11 · 103 阅读 · 1 评论 -
日常梳理-常用注解
常用注解原创 2022-11-01 14:57:56 · 176 阅读 · 0 评论 -
日常梳理-jdbctype和javatype映射(mysql)
文章目录 jdbctype javatype blob byte[]原创 2022-03-21 10:10:25 · 993 阅读 · 0 评论 -
日常梳理-java日常开发规范及常见问题
文章目录idea常见配置及问题自动生成注释给class加注释模板给方法添加注释idea用快捷键自动生成序列化ididea在windows编辑换行时,生成乱码^Midea在工具栏中显示快速创建包和类的图标idea常用快捷键问题Intellij IDEA Cannot resolve symbol XXXJava 异常处理的注意事项1、尽量不要使用e.printStackTrace(),而是使用log打印。2、用log正确打印异常格式3、不要用一个Exception捕捉所有可能的异常4、记得使用finally关原创 2021-05-28 10:37:53 · 497 阅读 · 0 评论 -
Hashtable、HashMap、ConcurrentHashMap等及常用阻塞队列
文章目录一、数据结构二、对比HashMapHashMap与Hashtable区别Hashtable和ConcurrentHashMap在lock表区别图三、java并发包(java.util.concurrent)1、线程池:1.1、为什么要用到线程池1.2、线程池创建方式(常用)2、Java容器:2.1、同步类容器2.2、并发类容器2.3、concurrentHashMap2.3.1、为什么采用concurrentHashMap:2.3.2、ConcurrentHashMap介绍:2.3.3、Hashta原创 2020-08-03 21:31:07 · 535 阅读 · 0 评论 -
volatile、synchronized、ReentrantLock、Atomic原子类、CountDownLatch等
文章目录volatile关键字volatile与普通变量的区别volatile保证内存可见性有序性-禁止指令重排序不能保证原子性synchronized关键字1、内存可见性:2、操作的原子性:3、有序性4、一个线程执行临界区代码过程:synchronized和volatile的比较CAS与AQSReentrantLock: CAS+AQS(非公平/公平)synchronized与ReentrantLock对比1、可重入:2、锁的实现3、性能的区别:4、功能区别:5、ReenTrantLock独有的能力:Co原创 2020-08-03 10:25:42 · 370 阅读 · 0 评论 -
日常梳理-Java原理
文章目录JVM内存模型:概念工作内存线程、主内存、工作内存三者的交互关系运行时数据区内存间交互操作java变量分类按声明的位置划分按所属的数据类型划分数据具体存储示例线程概念:线程生命周期:线程实现实现方式之间的区别:Thread类与Runnable接口区别:Runnable和Callable的区别:javajava的三大特性【public、private、protected区别】-访问权限重载与重写区别Throwable类、Error与Exception关系serialVersionUID的作用内存泄露和原创 2020-07-31 15:03:54 · 186 阅读 · 0 评论 -
CAS与AQS
文章目录CASAQS(AbstractQueuedSynchronizer) CAS CAS:Compare and Swap,比较并交换。 CAS有3个操作数:内存值V、预期值A、要修改的新值B。 当且仅当预期值A和内存值V相同时,将内存值V修改为B,否则什么都不做。 该操作是一个原子操作,被广泛的应用在Java的底层实现中。 在Java中,CAS主要是由sun.misc.Unsafe这个类通过JNI调用CPU底层指令实现。 AQS(AbstractQueuedSynchronizer) 关注以下三点:原创 2020-07-27 14:43:57 · 142 阅读 · 0 评论 -
ReentrantLock
ReentrantLock主要利用CAS+AQS队列来实现。它支持公平锁和非公平锁,两者的实现类似。 CAS:Compare and Swap,比较并交换。CAS有3个操作数:内存值V、预期值A、要修改的新值B。当且仅当预期值A和内存值V相同时,将内存值V修改为B,否则什么都不做。该操作是一个原子操作,被广泛的应用在Java的底层实现中。在Java中,CAS主要是由sun.misc.Unsafe这个类通过JNI调用CPU底层指令实现。 private Lock lock = new ReentrantLoc原创 2020-07-22 20:21:13 · 124 阅读 · 0 评论 -
java常用开源工具类
文章目录StringUtilspom判断字符串是否为空CollectionUtilspom StringUtils pom <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.10</version> </dependency> 判断字符串原创 2020-05-18 18:12:35 · 402 阅读 · 0 评论 -
serialVersionUID的作用
serialVersionUID的作用 文章目录serialVersionUID的作用什么是serialVersionUIDserialVersionUID是用来验证版本一致性的。如果一个类实现了Serializable接口,一定要记得定义serialVersionUID,否则会发生异常。如何idea提示生成serialVersionUID选项示例代码:pom.xml测试demo 什么是seria...原创 2019-10-18 14:30:23 · 204 阅读 · 0 评论