Arraylist,linkedlist和vector的存储和性能
arraylist:底层是数组,线程不安全,查询的速度较快
linkedlist 底层是链表,线程不安全,插入和删除的速度较快
vector:底层是数组,线程安全,读取和插入删除de速度慢
可变数组的原理
当该数组满时,若要插入新的元素,创建新的数组,将原数组的数据复制到改数据,将要添加的元素插入数组,再把新数组赋值给原数组。
Java和java的作用
javac对.java文件进行编译。生成jvm可以识别的字节码文件,即生成类名.class文件,。java 启动jvm,加载所需要的类库,类名.class文件对文件进行运行。
collection和collections的区别
collection是java.util下的工具类,用来对数组进行排序,查找,替换等等,
collections是java.util下的接口,用来对数组进行插入删除遍历以及判断数据是否在该数组中。
&&和&的区别
&是按位与
&&是逻辑运算符,根据&&左右等式返回值。
map的常用子类和区别
hashmap;底层是哈希表,线程不安全,可以存储null1和null键
hashtable 底层是哈希表,线程安全,不可以存储null值和null键
treemap 底层是二叉树,可以对数据进行指定顺序排序
fianl,finally,finalize的区别
final可以用来修饰属性,方法和类
修饰属性,属性值不可变,修饰方法,方法不可重写,修饰类,类不可被继承
finally是异常处理的关键词,try{}cath{}fianlly{},无论是是否有异常,都会运行finally,是异常处理机制的一个出口。
finalinaze是object类下的一个方法,Java中垃圾回收时会调用此方法。也可以对该方法重写来实现其他资源的回收。