- ConCurrentHashMap在1.7和1.8区别
ConCurrentHashMap1.8相比1.7的话,主要改变为:去除Segment+HashEntry+Unsafe的实现,改为Synchronized+CAS+Node+Unsafe的实现其实Node和HashEntry的内容一样,但是HashEntry是一个内部类。用Synchronized+CAS代替Segment,这样锁的粒度更小了,并且不是每......
- Java打怪升级路线
第一关:JavaSE阶段1、计算机基础2、java入门学习3、java基础语法4、流程控制和方法5、数组6、面向对象编程7、异常8、常用类9、集合框架10、IO11、多线程12、GUI编程13、网络编程14、注解与反射15、JUC编程16、JVM探究17、23种设计模式18、数据结构与算法19、正......
- Java 泛型
泛型GenricsJava泛型是在jdk5引入的新特性。它指定了接收参数的类型,避免了调用者乱传参,保留了代码的通用性和独特性。泛型类和泛型方法一般使用大写字母声明泛型,例如<T>类型擦除Typeerasure思考:能否插入一个字符串元素到一个整型数组中?答案:通过反射是可以的,原理就是类......
- Java学习-集合篇
集合什么是集合?有什么用?数组其实就是一个集合。集合实际上就是一个容器。可以来容纳其他类型的数据。集合为什么说在开发中使用的较多?集合是一个容器,是一个载体,可以依次容纳多个对象。在实际的开发中,假设连接数据库,数据库当中有10条记录,那么假设把这10条记录查询出来,在java程......
- java线程的五种状态
五种状态开始状态(new)就绪状态(runnable)运行状态(running)阻塞状态(blocked)结束状态(dead)状态变化1、线程刚创建时,是new状态2、线程调用了start()方法后,进入runnable状态,此时并未真正执行,需要和其他线程竞争cpu资源3、当该线程竞争到了cpu资源,进入running状态4、线程因为某种......
- Java中 = 和 += 的区别
问题shorts1=1;s1=s1+1;有什么错?shorts1=1;s1+=1;有错吗?讨论1)+:在编译器将右边的表达式结果计算出来后,和左边的变量类型比较精度,如果左边的变量精度低于右边的结果的精度,编译器会显式的报错,告诉程序员去强制转型。(所以s1=s1+1出错)最后将表达式的结果复......
- Java基础:自动装箱和自动拆箱
感谢,原文链接:https://www.cnblogs.com/dolphin0520/p/3780005.htmlJava的自动包装类型首先基本数据类型:4类8种基本数据类型对应包装器类byte(1字节)Byteshort(2字节)Shortint(4字节)Integerlong(8字节)Longfloat(4字节)Floatdouble(8字节)Doublechar(2字......
- 现实中的 JAVA (一)
买零食描述本例子主要是通过JAVA语言来描述,平时父母带我们去买零食的场景。买零食流程图从家里出发,选择一种出行方式达到零食店然后我们就可以开始购物了,选择对应的零食随后进行买单家庭成员UML图1、Person做为顶级的抽象类2、Male作为男CLass的描述类3、Fem......
- JAVA博客3
一.前言第三次写Blog,相比较上一次而言自己的经验更加的丰富了,这次blog的书写相对来说要更为轻松些。内容上题目较少,只需要分析有关课程成绩统计系统,但是说容易也并不容易,每一道题都是刺头中的刺头,这一次写博客,不仅仅是以完成任务的目的,更多的,让自己重新对那些打击过自己,折磨过......
- java中的各种锁
java中的各种锁一、概述乐观锁CAS悲观锁synchronized自旋锁CAS可重入锁synchronized、Reentrantlock、Lock读写锁ReentrantReadWriteLock,CopyOnWriteArrayList、CopyOnWriteArraySet公平锁Reentrantlock(true)非公平锁synchronized、reentrantlock(false)共享锁......