面向对象的三个特征
多态的好处
代码中如何实现多态
虚拟机是如何实现多态的
接口的意义
抽象类的意义
接口和抽象类的区别
什么是不可变对象
静态变量和实例变量的区别?
能否创建一个包含可变对象的不可变对象?
java 创建对象的几种方式
switch中能否使用string做参数
switch能否作用在byte, long上?
String s1=”ab”, String s2=”a”+”b”, String s3=”a”,
你对String对象的intern()熟悉么?
Object中有哪些公共方法?
java当中的四种引用
WeakReference与SoftReference的区别?
为什么要有不同的引用类型
java中==和eqauls()的区别,equals()和`hashcode的区别
equals()和hashcode()的联系
a.hashCode()有什么用?与a.equals(b)有什么关系
有没有可能两个不相等的对象有相同的hashcode
可以在hashcode中使用随机数字吗?
a==b与a.equals(b)有什么区别
3*0.1==0.3返回值是什么
a=a+b与a+=b有什么区别吗?
short s1= 1; s1 = s1 + 1; 该段代码是否有错,有的话怎么改?
short s1= 1; s1 += 1; 该段代码是否有错,有的话怎么改?
& 和 &&的区别
一个java文件内部可以有类?(非内部类)
如何正确的退出多层嵌套循环?
内部类的作用
final, finalize和finally的不同之处
clone()是哪个类的方法?
深拷贝和浅拷贝的区别是什么?
static都有哪些用法?
数据类型相关
java中int char,long各占多少字节?
int和Integer的区别
int 和Integer谁占用的内存更多?
String, StringBuffer和StringBuilder区别
StringBuffer和StringBuilder
什么是编译器常量?使用它有什么风险?
java当中使用什么类型表示价格比较好?
如何将byte转为String
可以将int强转为byte类型么?会产生什么问题?
关于垃圾回收
你知道哪些垃圾回收算法?
如何判断一个对象是否应该被回收
简单的解释一下垃圾回收
调用System.gc()会发生什么?
进程,线程相关
说说进程,线程,协程之间的区别
你了解守护线程吗?它和非守护线程有什么区别
什么是多线程上下文切换
创建两种线程的方式?他们有什么区别?
Thread类中的start()和run()方法有什么区别?
怎么检测一个线程是否持有对象监视器
Runnable和Callable的区别
什么导致线程阻塞
产生死锁的条件
为什么wait()方法和notify()/notifyAll()方法要在同步块中被调用
wait()方法和notify()/notifyAll()方法在放弃对象监视器时有什么区别
wait()与sleep()的区别
为什么wait, nofity和nofityAll这些方法不放在Thread类当中
怎么唤醒一个阻塞的线程
什么是多线程的上下文切换
synchronized和ReentrantLock的区别
FutureTask是什么
一个线程如果出现了运行时异常怎么办?
如何在两个线程间共享数据
如何正确的使用wait()?使用if还是while?
什么是线程局部变量ThreadLocal
ThreadLoal的作用是什么?
生产者消费者模型的作用是什么?
写一个生产者-消费者队列
使用阻塞队列来实现
使用wait-notify来实现
如果你提交任务时,线程池队列已满,这时会发生什么
为什么要使用线程池
java中用到的线程调度算法是什么
Thread.sleep(0)的作用是什么
什么是CAS
什么是乐观锁和悲观锁
ConcurrentHashMap的并发度是什么?
ConcurrentHashMap的工作原理
jdk 1.6:
jdk 1.8
CyclicBarrier和CountDownLatch区别
你有哪些多线程开发良好的实践?
关于volatile关键字
可以创建Volatile数组吗?
volatile能使得一个非原子操作变成原子操作吗?
ArrayList和LinkedList的区别?
ArrayList和Array有什么区别?
Comparator和Comparable的区别?
如何实现集合排序?
LinkedList的是单向链表还是双向?
关于异常
简单描述java异常体系
什么是异常链
throw和throws的区别
简单解释一下类加载器
简述堆和栈的区别
简述JVM内存分配
其他
java当中采用的是大端还是小端?
XML解析的几种方式和特点
JDK 1.7特性
JDK 1.8特性
Maven和ANT有什么区别?
JDBC最佳实践
IO操作最佳实践