Java—API

来源:互联网 发布:淘宝上买steam游戏商家 编辑:程序博客网 时间:2024/05/20 20:03
1.String
        String 类是final的,一旦赋值,内存空间不能改变
        StringBuffer类用于内容可以改变的字符串,是线程安全的
        StirngBuilder是线程不安全的
        Stringbuffer初始容量为为16,扩容是旧容量的2倍加2
        StringTokenizer 将字符串分段
2.Vector容量初始为10,每满增加10
   Enumeration 接口,vector 与 enumeration搭配使用,vector是同步的
  注意equals(0(内容比较)和hashCode()(地址比较)方法的重写
  vector只调用了equals方法
3. Enumeration和Iterator的区别
            方法名称不同,变短
            Iterator remove方法是所有删除集合类元素唯一安全的方法
4. hashtable和hashmap都实现了map接口,但hashtable继承了Dictionary
    hashmap中,null可以作为键,但只能有一个,作为值,可以有多个,hashtable不能存在null值和null键
    hashtable同步,hashmap不同步
    hashtable中hash数组的默认大小是11,增加方式是old*2+1
    hashmap中的hash数组默认大小是16,而且一定是2的指数
   不同步变成同步的方法:
        Collections类的synchronizedCollection方法
      remove,containsKey--->hashcode equals
      containsValue --->equals
      get --->hashcode 这些需要比较key是否以前put过
      但是在容器自己在遍历时是不需要进行比对的

5.ArrayList不同步,初始容量为10; 
   Collection接口是所有集合类的父类,元素无顺序,可以重复,可以存多个null
   set接口:元素无顺序,不能重复,只能存一个null
   list接口:元素有顺序,能重复,可以存多个null
   collections类操作集合类
   Array读快改慢
   Linked改快读慢
   Hash两者之间
   Stack 栈 先进后出 此类实现了list接口
   Queue 队列 先进先出
   linkedlist双向链表,可以模拟栈和队列

6. System类是final类型
   System.arrayCopy
   Runtime类封装了Java命令本身所启动的实例进程
  不能创建Runtime实例,只能通过Runtime.getRuntime获取正在运行的Runtime对象



7.  浅层克隆:
   实现Cloneable接口
   重写Object clone
 在方法内部 super.clone()
深层克隆:含有引用变量的克隆


原创粉丝点击