本文涵盖
Java语言的发展历史
Java编译环境
Java基础语法
参考
Java全栈知识体系:pdai.tech/md/java/io/…
Java编程思想(第4版):weread.qq.com/web/reader/…
Java基础知识整理:www.cnblogs.com/jyd0124/p/j…
Java 语言
Java语言发展历史
Java程序运行机制
Java语言现状
关键字、操作符、数据类型
关键字
操作符
算术操作符
关系操作符
逻辑操作符
按位操作符
移位操作符
三元操作符
字符串操作符
类型转换操作符
数据类型
基本类型
类型转换(隐式转换、强制类型转换、类型提升)
自动拆装箱
IO
异常
泛型
泛型的实现原理
内部类
枚举
注解
JDK版本新特性
反射
什么是反射?Java中哪些场景下使用反射?Java反射有什么作用?Java中反射机制有什么优缺点?如何使用反射?Java反射API?
并发
FAQ
JDK、JRE、JVM 之间有什么区别和联系?
== 和 equal 有什么区别?
this 和 super有什么区别?
s1 = s1 + 1 和 s1 += 1有什么区别?
short s1 = 1; s1 = s1 + 1 有错吗?s1 += 1;有错吗?
i++ 和 ++i 的区别是什么?
Java是值传递还是引用传递?怎么理解值传递和引用传递?
static关键字有什么作用?static变量和实例变量有什么区别?
final、finally、finalize有什么区别?
私有方法能被重载/重写/继承吗?静态方法能被重载/重写/继承吗?构造方法能被重载/重写/继承吗?
Java异常有哪些分类?Error和Exception有什么区别?运行时异常和受检异常有什么区别?throw和throws的区别?
使用try-catch会影响性能吗?
什么是自动拆装箱?
怎么理解Java强制类型转换?自动类型转换?类型提升?
switch case 支持哪几种数据类型?
StringBuilder,StringBuffer的区别?默认容量大小?
String字符串如何实现编码转换?
main方法作用?如何向main方法传递参数?不用main方法如何运行一个类?main方法运行原理?
静态内部类和普通内部类的区别?
内部类和外部类的相互访问方式?
说说equals和hashCode?
Java 中的classpath环境变量作用?如何设置?
如何判断两个数字是否相等?
不可变类,不可变对象是什么?有什么好处?
深拷贝和浅拷贝区别?
String s = new String("abc"); 创建了多少个String对象?
Java 中IO流有哪几种?
Integer a = 128; Integer b = 128; Java中a == b成立吗?
JAVA中this和super有哪些用法区别?
为什么HashMap负载因子是0.75?
Java中常量有哪几种类型?
Java中实现多态的机制是什么?
内部类中引用其他类的成员有什么限制?
Java中JDBC调用数据库有哪几个步骤?
为什么有int类型还要设计Integer类型?
为什么静态方法中不能调用非静态方法或变量?
static修饰变量、代码块时何时执行?执行几次?
成员变量和局部变量有哪些区别?
Java中Hash冲突有哪些解决方法?
Java中BigDecimal类型如何加减乘除运算?
什么对称/非对称加密?有什么区别?有哪些实现方式?
OpenJDK和SunJDK的区别?
什么是Java事务?都有哪些类型?有什么区别?
Java中如何实现字符串中查找某字符出现的次数?
了解过字节码的编译过程吗?
RMI是什么?RMI体系结构分哪几层?
罗列每个JDK版本新特性?
Java中new一个对象的过程中发生了什么?
为什么for循环中不建议使用 "+" 进行字符串拼接?
Java中构造函数什么时候被调用执行?
空 "" 有什么作用?
Java中final关键字修饰一个变量时,是引用不能变还是引用的对象不能变?
什么是序列化和反序列化?如何实现?
简述一下布隆过滤器原理?布隆过滤器的误判率如何估算?
类加载过程和对象创建过程有什么区别?