Java面试题「43题」

关键字

final、finally、finalize的区别?

为什么要用 static 关键字?

”static”关键字是什么意思?是否可以覆盖(override)一个 private 或者是 static 的方法?

是否可以在 static 环境中访问非 static 变量?

static 静态方法能不能引用非静态资源?

static 静态方法能不能引用静态资源?

非静态方法里面能不能引用静态资源?

静态变量、代码块、和静态方法的执行顺序是什么?

面向对象

面向对象和面向过程的区别?

讲讲面向对象的三大特性?

重载和重写的区别是什么?

重载的方法能否根据返回值类型进行区分?

构造器是否可被重写?

抽象类和接口的区别是什么?

抽象类能使用 final 修饰吗?

什么是不可变对象?好处是什么?

值传递和引用传递的区别的什么?

集合

常用的集合有哪些?

线程安全的集合有哪些?线程不安全的呢?

Arraylist 与 LinkedList 区别?

ArrayList 与 Vector 区别?

说说 HashMap 底层数据结构?

解决 hash 冲突的办法有哪些?HashMap 用的哪种?

为什么在解决 hash 冲突的时候,不直接用红黑树?而选择先用链表,再转红黑树?

HashMap 默认加载因子是多少?为什么是 0.75,不是 0.6 或者 0.8?

一般用什么作为 HashMap 的 key?

HashMap 为什么线程不安全?

ConcurrentHashMap 的 get 方法是否要加锁,为什么?

get 方法不需要加锁与 volatile 修饰的哈希桶有关吗?

ConcurrentHashMap 不支持 key 和 value 为 null 的原因?

JDK1.7 与 JDK1.8 中 ConcurrentHashMap 的区别?

ConcurrentHashMap 和 Hashtable 的效率哪个更高?为什么?

多线程下安全的操作 map 还有其他方法吗?

讲一讲快速失败 (fail-fast) 和安全失败 (fail-safe)?

多线程

线程和进程有什么区别?

线程的状态有哪些?

sleep() 方法和 wait() 方法区别?

死锁的发生原因?怎么避免?

synchronized 和 ReentrantLock 的区别?

synchronized 和 volatile 的区别?

synchronized 的用法有哪些?

反射

动态代理 jdk 和 cglib 的区别?

​​​​​​​


学习更多JAVA知识与技巧,关注与私信博主(888)!

热爱学习和渴望进阶的小伙伴,各种JAVA学习路线、笔记、面试题,免费分享!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值