复习期末考试了一段时间,丢开了java太久了,感觉心里不踏实,所以开了个新计划,利用每日的一些琐碎时间来做10道选择题,巩固一下基础知识。
Q1:
public class Test {
private static int j = 0;
private static Boolean methodB(int k) {
j += k;
return true;
}
public static void methodA(int i) {
boolean b;
b = i < 10 | methodB(4);
b = i < 10 || methodB(8);
}
public static void main(String args[]) {
methodA(0);
System.out.println(j);
}
}
What is the result?
解析:这里考的是“|”和“||”的区别
条件一 | 条件二
条件一 || 条件二
“|”是按位或,不管第一个条件是真还是假,都会执行第二个条件。
“||”是逻辑或,第一个条件为真的话,第二个条件不会被执行。
Q2
解析:
JVM的知识现阶段还没有学,所以先用下大佬的题解,方便复习。侵权请联系我删除。
Q3
Q4
资料来源:(牛客网)程序猿Go师傅
Q5
Q6
解析
使用clone方法创建的新对象的构造函数是不会被执行的,也就是说会绕过任何构造函数(有参和无参),因为clone方法的原理是从堆内存中以二进制流的方式进行拷贝,直接分配一块新内存。