java面试汇总
- java相关
- java基础
- JDK JRE JVM 区别
- java中常用数据类型的区别
- 面向对象三大特征
- 重载与重写的区别
- 接口与抽象类异同
- 静态和实例变量(方法)的区别
- 类的执行顺序
- 异常体系
- 字符串存储(常量池)
- String StringBuilder StringBuffer区别
- List与Set的区别
- web相关
- 框架相关
- 其他
- 计算机网络
- 计算机网络模型
java相关
java基础
JDK JRE JVM 区别
java中常用数据类型的区别
float单精度使用科学计数法,只能表达7位。
float与double计算容易造成精度损失。原因是10进制转2进制无法除尽。
BigDecimal类精准计算。
面向对象三大特征
封装:隐藏细节,选择暴露
继承:公有父类抽取,子类扩展
多态 :父类类型指向子类对象,一个父类多个实现。
多态的注意点:
- 多态情况下,子父类存在同名的成员变量时,访问的是父类的成员变量。
- 多态情况下,子父类存在同名的非静态的成员函数时,访问的是子类的成员函数。
- 多态情况下,子父类存在同名的静态的成员函数时,访问的是父类的成员函数。
- 多态情况下,不能访问子类特有的成员。
重载与重写的区别
接口与抽象类异同
静态和实例变量(方法)的区别
类的执行顺序
优先父类-优先静态-构造块优先于构造函数
异常体系
字符串存储(常量池)
String无法修改
new String 创建对象
String s1 = “a”;在常量池中创建
String s2 = s1+“b”;此时S1是引用类型编译器无法优化,会创建新的对象。
String StringBuilder StringBuffer区别
List与Set的区别
ConcurrentSkipListSet 跳表
CopyOnWriteArraySet 数组实现
EnumSet 位运算ArrayList与LinkedList的区别
** HashSet和TreeSet的区别**
TreeSet元素不能为NULL 因为语速必须被比较equals()和hashcode()
IO相关
web相关
框架相关
其他
计算机网络
计算机网络模型
数据处理