ThreadLocal原理

ThreadLocal是什么

早在JDK 1.2的版本中就提供Java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序。


Java注解初步

元注解

要深入学习注解,我们就必须能定义自己的注解,并使用注解,在定义自己的注解之前,我们就必须要了解Java为我们提供的元注解和相关定义注解的语法。元注解的作用就是负责注解其他注解。Java5.0定义了4个标准的meta-annotation类型,它们被用来提供对其它 annotation类型作说明。Java5.0定义的元注解:

Java数据类型

基本数据类型

变量就是申请内存来存储值。也就是说,当创建变量的时候,需要在内存中申请空间。内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据。因此,通过定义不同类型的变量,可以在内存中储存整数、小数或者字符。
Java 的两大数据类型:

  • 内置数据类型
  • 引用数据类型


Java内部类测试示例

概述

  1. 内部类是指在一个外部类的内部再定义一个类。类名不需要和文件夹相同。
  2. 内部类可以是静态static的,也可用public,default,protected和private修饰,而外部顶级类即类名和文件名相同的只能使用public和default
  3. 内部类是一个编译时的概念,一旦编译成功,就会成为完全不同的两类。对于一个名为outer的外部类和其内部定义的名为inner的内部类,编译完成后出现outer.class和outer$inner.class两类,所以内部类的成员变量/方法名可以和外部类的相同。

Java集合及相关集合的排序

概述

集合分为两大类,即Collection(List、ArrayList、LinkedList、Vector;HashSet、LinkedHashSet、TreeSet) 和 Map(HashMap、LinkedHashMap、TreeMap、Hashtable&Properties-古老的实现类线程安全并且键不能为null),Map的key使用set集合进行存储(组成keySet),所以map的key不能重复。使用Collections操作collection及map,使用Arrays操作数组。