解析:
父类静态代码块-->子类静态代码块-->父类普通代码块-->父类构造方法-->子类代码块-->子类构造方法;
A.频繁FullGc
B.jvm崩溃
C.程序抛内存控制的Exception
D.java进程异常消失
答案:
C
解析:
首先理解一下内存泄漏的概念,内存泄漏就是对象引用消失了,对象内存却没有被回收。
A答案:FullGC 是老年代内存空间不足的时候,才会触发的,老年代一般是生命周期较长的对象或者大对象,频繁的 FullGC 不会可能会影响程序性能(因为内存回收需要消耗CPU等资源),但是并不会直接导致内存泄漏。
B 答案:JVM奔溃的可能是内存溢出引起的,也可能是其他导致 JVM崩溃的操作,例如设置了错误的JVM参数等。
C 答案:内存异常,最常见的 就是 StackOverFlow 了把,内存溢出,其实内存泄漏的最终结果就是内存溢出。所以,基本上C是对的答案。
D 答案:Java 进程异常消失,这个明显不对的。
A.0,0
B.0,1
C.1,0
D.1,1
答案:
A
解析:
14.下面这条语句一共创建了多少个对象:String s="welcome"+"to"+360;A.1
B.2
C.3
D.4
答案:
A
解析:
略,可以参考我的其他文字关于对String的介绍.
A.12136
B.63121
C.61213
D.11236
答案:
A
解析:
考察方法进栈与出栈的顺序。先进后出
A.Class类是Object类的超类
B.Object类是一个final类
C.String类是一个final类
D.Class类可以装载其它类
答案:
C D
解析:
A.class类是Object的派生类
B.每个类都使用Object类作为超类,而final修饰的类不能被继承
A.String
B.int
C.boolean
D.Double
答案:
BC
解析:
Double在java.lang包,是double的一个包装类,不是基本数据类型
A.类(Class)
B.Applet
C.Application
D.Servlet
答案:
BCD
解析:
Java程序的种类有:
(a)内嵌于Web文件中,由浏览器来观看的_Applet
(b)可独立运行的 Application
(c)服务器端的 Servlets
A.数组是一个对象,不同类型的数组具有不同的类
B.数组长度是可以动态调整的
C.数组是一个连续的存储结构
D.一个固定长度的数组可类似这样定义:int array[100]
E.两个数组用equals方法比较时,会逐个便利其中的元素,对每个元素进行比较
F.可以二维数组,且可以有多维数组,都是在java中合法的。
答案:
A C F
解析:
1.数组其实也是一个对象
2.定义一个一维数组的方式是:type[] arrayname或者type arrayname[];
3.一维数组的初始化:
(1)静态初始化
1)int[] arr = new int[]{1, 2, 3}
2)int[] arr = {1, 2, 3}
(2)动态初始化
int[] arr = new int[3];
4.可以定义多维数组
-Xms1G -Xmx2G -Xmn500M -XX:MaxPermSize=64M -XX:+UseConcMarkSweepGC -XX:SurvivorRatio=3,
请问eden区最终分配的大小是多少?
A.64M
B.500M
C.300M
D.100M
答案:
C
解析:
java -Xmx2G -Xms1G -Xmn500M -Xss128k
-Xmx2G:设置JVM最大可用内存为2G。
-Xms1G:设置JVM初始内存为1G。此值可以设置与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存。
-Xmn500M:设置年轻代大小为2G。整个JVM内存大小=年轻代大小 + 年老代大小 + 持久代大小。
-XX:SurvivorRatio=3:新生代中又会划分为 Eden 区,from Survivor、to Survivor 区。
其中 Eden 和 Survivor 区的比例默认是 8:1:1,当然也支持参数调整 -XX:SurvivorRatio=3的话就是3:1:1。
故该题为500*(3/5)=300M.
Java笔试内容集合 持续更新中....
文末欢迎关注个人微信公众号:Coder编程
获取最新原创技术文章和免费学习资料,更有大量精品思维导图、面试资料、PMP备考资料等你来领,方便你随时随地学习技术知识!