java语言特性包括反射,动态代理
java1.5 泛型,枚举,注解,装箱拆箱
java1.7 switch case(字符串类型),数据库连接,IO流支持closeable自动关闭
Object eaquals(b){return this==b}
native hashcode()
toString(){getClass().getClassName()+"@"+Integer.toHexString(hashCode())}
reflect包
反射机制通过实例对象或直接通过类对象,获得属性fields,方法method,判断isAnnotationPresent注解是否存在,getAnnotation获得注解
Java 1.5 concurrency并发包 ConcurrenctHashMap
arraylist,linkedlist,前者线程不安全,arraylist增加元素分两步,arraylist[0]放值,长度加1,如果两个并发线程同时放,先放A线程arraylist[0]位置,swap切换到B线程又放arraylist[0]位置,然后两个线程再依次长度+1,所以两个线程重复都放在arraylist[0],长度最终为2
linkedlist结构双向链表,适合增加删除,通过指针,arraylist适合随机查找,内部动态数组,内存地址相邻,数组默认容量10,size长度0
linkedlist查找需要通过指针,arraylist 除非增删末尾数据,否则需要移动数据
linkedlist本身定义的方法,addFirst,getFirst,addlast,removefirst,removelast,
sorterset ,sortedmap
treeset, treemap
自然排序(根据元素本身实现comparable方法规则排序),排序器排序(对于自定义对象实现comparator排序接口作为规则实现排序)