Java基础
plugcy
精通数据库
展开
-
HashMap的底层实现原理
HashMap的初步介绍:HashMap里存放的是键值对,其中key值可以为null,但不能重重复,HashMap继承于AbstractMap类,实现了Map、Cloneable、java.io.Serializable接口,HashMap的实现不是同步的,这意味着它不是线程安全的。HashMap类有一个叫做Entry的内部类,底层实现主要是一个名叫table的默认大小为16的数组。在这个Entr...原创 2018-04-22 23:28:30 · 228 阅读 · 0 评论 -
String类的intern()方法
0.引言什么都先不说,先看下面这个引入的例子:[java] view plain copyString str1 = new String("SEU")+ new String("Calvin"); System.out.println(str1.intern() == str1); System.out.println(str1 == "SEUCalvin"); 本人JDK版本1...转载 2018-05-03 22:59:31 · 140 阅读 · 0 评论 -
IO读写——同步、异步与阻塞、非阻塞之间的区别
阻塞和非阻塞,同步和异步1 例子故事:老王烧开水。出场人物:老张,水壶两把(普通水壶,简称水壶;会响的水壶,简称响水壶)。老王想了想,有好几种等待方式1.老王用水壶煮水,并且站在那里,不管水开没开,每隔一定时间看看水开了没。-同步阻塞老王想了想,这种方法不够聪明。2.老王还是用水壶煮水,不再傻傻的站在那里看水开,跑去寝室上网,但是还是会每隔一段时间过来看看水开了没有,水没有开就走人。-同步非阻塞老...原创 2018-05-08 16:22:46 · 3371 阅读 · 0 评论 -
多态详解——类方法和成员方法
public class A { public static String staticStr = "A's static field"; public String nonStaticStr = "A's nonstatic field"; public static void staticMethod(){ System.out.println("...原创 2018-05-16 09:01:09 · 723 阅读 · 0 评论 -
HashMap相关问题
1:HashMap和ConcurrentHashMap之间的区别:JDK 1.7的HashMap和ConcurrentHashMap之间的区别见讲义JDK1.8HashMap和ConcurrentHashMap之间的区别HashMap:Java8 对 HashMap 进行了一些修改,最大的不同就是利用了红黑树,所以其由 数组+链表+红黑树 组成。Java7HashMap查找的时候,根据hash值能...原创 2018-07-08 16:12:24 · 156 阅读 · 0 评论 -
线程的几种状态
1. 线程的几种状态初始状态:是指线程刚刚创建,尚未启动,还没有调start()方法 运行状态:分为就绪和运行中状态 就绪:线程对象创建后,其他线程(比如main线程)调用了该对象的start()方法。该状态的线程位于可运行线程池中,等待被线程调度选中,获取cpu 的使用权,此时处于就绪状态(ready)。 运行中:就绪状态的线程在获得cpu 时间片后变为运行中状态(runnin...原创 2018-08-15 22:24:57 · 3820 阅读 · 0 评论