专栏首页Java架构手撕面试官系列:BAT面试常问85题

手撕面试官系列:BAT面试常问85题

JVM专题

(面试题+答案领取方式见个人主页)

Java 类加载过程?

描述一下 JVM 加载 Class 文件的原理机制?

Java 内存分配。

GC 是什么? 为什么要有 GC?

简述 Java 垃圾回收机制。

如何判断一个对象是否存活?(或者 GC 对象的判定方法)

垃圾回收的优点和原理。并考虑 2 种回收机制。

垃圾回收器的基本原理是什么?垃圾回收器可以马上回收内存吗?有什么办法主动通知虚拟机进行垃圾回收?

Java 中会存在内存泄漏吗,请简单描述。

深拷贝和浅拷贝。

System.gc() 和 Runtime.gc() 会做什么事情?

finalize() 方法什么时候被调用?析构函数 (finalization) 的目的是什么?

如果对象的引用被置为 null,垃圾收集器是否会立即释放对象占用的内存?

什么是分布式垃圾回收(DGC)?它是如何工作的?

串行(serial)收集器和吞吐量(throughput)收集器的区别是什么?

在 Java 中,对象什么时候可以被垃圾回收?

简述 Java 内存分配与回收策率以及 Minor GC 和 MajorGC。

JVM 的永久代中会发生垃圾回收么?

Java 中垃圾收集的方法有哪些?

类加载器双亲委派模型机制?

数据库专题

请简洁描述 MySQL 中 InnoDB 支持的四种事务隔离级别名称,以及逐级之间的区别?

在 MySQL 中 ENUM 的用法是什么?

CHAR 和 VARCHAR 的区别?

列的字符串类型可以是什么?

MySQL 中使用什么存储引擎?

TIMESTAMP 在 UPDATE CURRENT_TIMESTAMP 数据类型上做什么?

主键和候选键有什么区别?

MySQL 数据库服务器性能分析的方法命令有哪些?

LIKE 和 REGEXP 操作有什么区别?

BLOB 和 TEXT 有什么区别?

数据库的三范式?

MySQL 表中允许有多少个 TRIGGERS?

什么是通用 SQL 函数?

MySQL 中有哪几种锁?

MySQL 数据优化。

MySQL 的关键字。

存储引擎。

数据库备份。

truncate delete drop 的区别。

Redis 是什么?两句话做一下概括。

Redis(管道,哈希)。

Redis 实现原理或机制。

Redis 有两种类型分区。

什么是 MongoDB。

MongoDB 特点。

MongoDB 的功能。

MongoDB 的适用场景。

Redis、memcache、MongoDB 对比。

Redis 有什么用?只有了解了它有哪些特性,我们在用的时候才能扬长避短,为我们所用。

集合框架主题

ArrayList 和 Vector 的区别。

说说 ArrayList,Vector, LinkedList 的存储性能和特性。

快速失败 (fail-fast) 和安全失败 (fail-safe) 的区别是什么?

hashmap 的数据结构。

HashMap 的工作原理是什么?

Hashmap 什么时候进行扩容呢?

List、Map、Set 三个接口,存取元素时,各有什么特点?

Set 里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用 == 还是equals()? 它们有何区别?

两个对象值相同 (x.equals(y) == true),但却可有不同的 hash code,这句话对不对?

heap 和 stack 有什么区别。

Java 集合类框架的基本接口有哪些?

HashSet 和 TreeSet 有什么区别?

HashSet 的底层实现是什么?

LinkedHashMap 的实现原理?

为什么集合类没有实现 Cloneable 和 Serializable 接口?

什么是迭代器 (Iterator)?

Iterator 和 ListIterator 的区别是什么?

数组 (Array) 和列表 (ArrayList) 有什么区别?什么时候应该使用 Array 而不是ArrayList?

Java 集合类框架的最佳实践有哪些?

Set 里的元素是不能重复的,那么用什么方法来区分重复与否呢?是用 == 还是equals()?它们有何区别?

Comparable 和 Comparator 接口是干什么的?列出它们的区别。

Collection 和 Collections 的区别。

多线程 / 高并发专题

stop() 和 suspend() 方法为何不推荐使用?

sleep() 和 wait() 有什么区别?

同步和异步有何异同,在什么情况下分别使用他们?

当一个线程进入一个对象的一个 synchronized 方法后,其它线程是否可进入此对象的其它方法?

简述 synchronized 和 java.util.concurrent.locks.Lock 的异同?

概括的解释下线程的几种可用状态。

什么是 ThreadLocal?

run() 和 start() 区别。

请说出你所知道的线程同步的方法。

线程调度和线程控制。

什么是线程饿死,什么是活锁?

多线程中的忙循环是什么?

volatile 变量是什么?volatile 变量和 atomic 变量有什么不同?

volatile 类型变量提供什么保证?能使得一个非原子操作变成原子操作吗?

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • BeautifulSoup库整理

    注意:如果是html的父标签就是他自己,soup本身也是种特殊的标签的他的父标签是空

    小小咸鱼YwY
  • 迭代器,三元表达式,列表生成式,字典生成式,生成器,递归(没深入理解)

    yield的英文单词意思是生产,在函数中但凡出现yield关键字,再调用函数,就不会继续执行函数体代码,而是会返回一个值

    小小咸鱼YwY
  • 如何排查Java内存泄漏?看完我给跪了!

    没有经验的程序员经常认为Java的自动垃圾回收完全使他们免于担心内存管理。这是一个常见的误解:虽然垃圾收集器做得很好,但即使是最好的程序员也完全有可能成为严重...

    乱敲代码
  • 力扣题目汇总(位1的个数,有效的字母异位词,检测大写字母)

    否则,我们定义这个单词没有正确使用大写字母。 示例 1: 输入: "USA" 输出: True 示例 2: 输入: "FlaG" 输出: False ...

    小小咸鱼YwY
  • 『互联网架构』kafka前世今生和安装部署(116)

    IT故事会
  • 自已开发IM有那么难吗?手把手教你自撸一个Andriod版简易IM (有源码)

    一直想写一篇关于im即时通讯分享的文章,无奈工作太忙,很难抽出时间。今天终于从公司离职了,打算好好休息几天再重新找工作,趁时间空闲,决定静下心来写一篇文章,毕竟...

    JackJiang
  • Delphi xe10对json的解析应用

    {"code":100,"state":"true","data":["hero","npc","pet"]}

    战神伽罗
  • how do you usually upload picture in SCN A workaround for current SCN upload is

    版权声明:署名,允许他人基于本文进行创作,且必须基于与原先许可协议相同的许可协议分发本文 (Creative Commons)

    Jerry Wang
  • android中webview控件和javascript交互实例

    当我们要实现丰富的图文混排效果的时候,我们一般会使用webview,这是一个功能十分强大的的控件,来看看官方的解释:

    战神伽罗
  • android--WebView使用addJavascriptInterface在sdk 17的问题

    当调用WebView 的addJavascriptInterface时,使用android:targetSdkVersion="10"时是没有问题的,能够触发事...

    战神伽罗

扫码关注云+社区

领取腾讯云代金券