java面试
1、String、StringBuffer、StringBuilder的区别
-
String字符串常量,StringBuffer、StringBuilder字符串变量
-
运行速度:StringBuilder>StringBuffer>String
-
StringBuilder线程不安全,StringBuffer线程安全
-
String:适用于少量字符串的操作
-
StringBuilder:适用于单线程在字符缓冲区中大量的字符操作
-
StringBuffer:适用于多线程在字符缓冲区中大量的字符操作
2、HashMap和HashTable的区别
-
HashMap线程不安全,可存储null键和null值
-
HashTable线程安全,key和value都不能为null
3、实现线程同步的方法
-
synchronized修饰方法或代码块,使用内置锁
4、数据库索引
-
相当于书的目录。
-
本质上是维护一张特定列的平衡树。
5、抽象类
-
抽象类不能被实例化
-
有抽象方法的b必定是抽象类
-
非抽象子类必须实现抽象方法