Java基础面试题2
半塘 2023/8/20 Java
# 1、 Java语言有哪些特点
# 2、面向对象和面向过程的区别
# 3、八种基本数据类型的大小,以及他们的封装类
# 4、标识符的命名规则。
# 5、instanceof 关键字的作用
# 6、Java自动装箱与拆箱
# 7、 重载和重写的区别
# 8、 equals与==的区别
# 9、 Hashcode的作用
# 10、String、StringBuffer 和 StringBuilder 的区别是什么?
# 11、ArrayList和LinkedList的区别
# 12、 HashMap和HashTable的区别
# 13、 Collection包结构,与Collections的区别
# 14、 Java的四种引用,强弱软虚
# 15、 泛型常用特点 (待补充)
# 16、Java创建对象有几种方式?
# 17、有没有可能两个不相等的对象有相同的hashcode
# 18、深拷贝和浅拷贝的区别是什么?
# 19、final有哪些用法?
# 20、static都有哪些用法?
# 21、3*0.1==0.3返回值是什么
# 22、a=a+b与a+=b有什么区别吗?
# 23、try catch finally,try里有return,finally还执行么?
# 24、 Excption与Error包结构
# 25、OOM你遇到过哪些情况,SOF你遇到过哪些情况
# 26、 简述线程、程序、进程的基本概念。以及他们之间关系是什么?
# 27、线程有哪些基本状态?(补充)
# 28、Java 序列化中如果有些字段不想进行序列化,怎么办?
答案
将不想进行序列化的字段声明为 transient,这样这些字段就不会被序列化。 transient 关键字修饰的字段不会被序列化和反序列化,即使它们在类中声明为可序列化的字段。