常见问题
目前正处于草稿状态中
要对Java的一些常见问题有所准备,比如GC,面向对象的特征等等。其他语言的话对应准备一些问题就行。
⬆️ 关于java注释
jvm内存区域,为什么要有jvm // java guide
所以JVM所担任的职责之一,就是当地的翻译员,将位元码文件翻译为当时作业系统看得懂的0101序列。不过这不是最重要的,基本上如果只是要翻译员的话,直译器(Interpreter )就办得到了。JVM有个很重要的观念就是:「对于Java程式而言,其实它只认识一种作业系统(或说是一种机器),这个系统叫作JVM,而对于JVM而言,位元码文件就是它的可执行文件!也就是格式为.class的文件。Java代码程序,理想上,并不用理会真正执行于哪个平台之上,它只要知道如何执行于JVM之上就可以了,至于JVM实际上如何与底层平台作沟通,则是JVM自己的事!」这个观念非常的重要,对于以后能够搞清楚所PATH变量与CLASSPATH变量的概念,也有一定的帮助。
jvm 内存
Java内存(分配->回收)
jvm启动过程? 验证是验证什么
//
JVM内存管理相关问题
说说JVM的内存吧,他们都是干啥的?对象怎么创建?
每个区域都会发生怎样的异常,谁会发生OOM?
内存分配方式?
堆和栈的区别?
GC?垃圾回收?
class文件生成过程?
Android虚拟机与Java虚拟机之间区别
全局变量和局部变量(分配在什么地方)// dz
静态变量,实例变量,构造函数的初始化顺序。//java基础 static 6.
类加载过程
类加载过程,我扯到了invokestatic,面试官问什么时候调用?我答在调用静态方法时调用
讲讲Java中类的加载过程
类加载机制,什么时候需要对类进行初始化。(这个就是在问类初始化的时机
String类如何被加载的【类加载机制】;
String类如何被加载的【类加载机制】;双亲委派模型【常规题】
双亲委派模型【常规题】
//
java对象的加载机制
//
你觉得像成员变量、成员方法、然后静态类,这些类在加载的时候,顺序是什么样的 // meituan
异常体系,可以catch error吗
Java中常见的异常。
//
说一下 JAVA 的异常、泛型、反射。
详细说异常分类
// 还有安卓的热启动
抽象类与接口的区别
抽象类和接口的区别
Abstract class和interface有什么区别?
多态,有哪些实现
继承多态如何实现
多态
C++和java如何实现多态性,public的 父类中子类重写能不能用protected?反过来呢?
如何实现多态,多态的底层实现原理是什么(方法表)
//
什么是接口回调?为什么使用接口回调?
有哪些
说一下Java三种数据集:Map,List,Set,它们分别的特点是什么,它们的优缺点分别是什么
hashmap底层原理(必考)hash值的计算、为什么要重写equals和hashcode 、插入的时候会发生啥
hashcode 为什么出现、是什么、equals关系
hashmap的扩容机制,为什么要俩倍扩容。
HashMap的源码,扩容的条件。
hashmap 原理 机制 扩容(他说我扩容说太简单了。。)
hashmap 扩容,为啥是 2 倍,为啥 size 是 2 的幂次方
Hashmap的具体实现
ArrayList和HashMap了解吗?(面试前恶补过HashMap,这部分说了蛮多的。)
设计一个K-V的数据结构应该考虑哪些问题,如何解决这些问题【说了一下哈希碰撞,多线程访问,初始容量等】// 啊 k-v就是key-value就是哈希表,要有应变能力
HashMap原理,get、put的时间复杂度
谈谈HashMap(为什么不适用基础数据类型、添加的时候需要注意什么、添加的key有什么特殊性)
介绍一下所有的map,以及他们之间的对比,适用场景。
ConcurrentHashMap和HashMap底层实现
hashmap底层结构 扩容机制 查询机制 hash算法
hashmap的key可以是基本类型吗 如果一定要定义为基本类型怎么做 //⭐️