面试中遇到的错题(持续更新)

1.类的加载机制(static关键字啥时候被加载的)

1加载:加载指的是JVM读取Class文件。并根据Class文件描述创建java.lang.class对象的过程,
将需要加载的Class文件加载到运行时的方法区,在堆中创建java.lang.class对象,并封装类在方法去的数据结构,读取时可以通过JAR包,WAR包读取。
2验证:确保当前的Class符合当前虚拟机的需求,保障虚拟机的自身安全,只有通过验证的Class文件才能被JVM加载。
1.文件格式验证
2.元数据验证
3.字节码验证:通过数据流和控制流分析,确定程序语义是合法的、符合逻辑的。
4.符号引用验证:确保解析动作能正确执行。

3准备:在方法区中为变量分配空间并设置类的初始值。非final的静态变量在准备阶段的初始值是0,赋值是初始化的时候进行的,如果加上final的变量会直接在准备阶段被赋值。
4.JVM
JVM会将常量池中的引用符号替换为直接应用。
5.初始化
主要通过执行类构造器的方法将类初始化。

2.equals和==的区别:

1.对于==来谈。
如果比较的是基本数据类型变量,比较两个变量的值是否相等。(不一定数据类型相同)
如果比较的是引用数据类型变量,比较两个对象的地址值是否相同,即两个引用是否指向同一个地址值
2.对于equals()来谈。
如果类中重写了equals方法,比较内容是否相等。
String、Date、File、包装类都重写了Object类的equals方法。
如果类中没有重写equals方法,比较地址值是否相等

socket

泛型

项目细节(线程创建,数据库,网络编程)
堆排序

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

卷的快乐人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值