牛客选择题3

tech2024-10-01  25

1、下列程序的运行结果

public void getCustomerInfo() { try { // do something that may cause an Exception } catch (java.io.FileNotFoundException ex) { System.out.print("FileNotFoundException!"); } catch (java.io.IOException ex) { System.out.print("IOException!"); } catch (java.lang.Exception ex) { System.out.print("Exception!"); } }

正确答案: A IOException!

代码块中的do something that may cause an Exception说明程序运行时只会抛出一个异常, 但没有 指明 是什么异常,三种异常均有可能。对于某个异常,只会被捕获一次, 因而只有A是可能的答案, 另外三个 选 项都 捕获了多个异常,与题意不符。

2、instanceof运算符能够用来判断一个对象是否为:

instance是java的二元运算符,用来判断他左边的对象是否为右面类(接口,抽象类,父类)的实例

3、包含在java文件的公共类必须和文件名相同?

public class Test{ public static class innerClass{ public static void prin(){ System.out.println("innerClass"); } } public static void main(String[] args) { Test.innerClass.prin(); System.out.println("HelloWorld"); } }

除去扩展名.java的部分,包含在java文件里的Java里的公共类必须与文件的名字相同。 但是公共的内部类是不需要和文件的名字相同的。

解题要点: 1、java文件中类型为public的类有两种,一种是外部类,一种是内部类; 2、当外部类的类型为public时,文件名需要与其相同; 3、当内部类的类型为public时,而外部类不是public类型的,则文件名可随意,但需要满足命名规范(以字母或下划线开头)。

4、运行代码,输出的结果是()

public class P { public static int abc = 123; static{ System.out.println("P is init"); } } public class S extends P { static{ System.out.println("S is init"); } } public class Test { public static void main(String[] args) { System.out.println(S.abc); } }

不会初始化子类的几种

调用的是父类的static方法或者字段调用的是父类的final方法或者字段通过数组来引用

5、关于Histroy对象的属性或方法

History 属于浏览器对象: length:URL 数量 go:加载 history 列表中某个具体页面 back:加载 history 列表中前一个 URL forward:加载 history 列表中下一个 URL

浏览器对象包含:Window、Navigator、Location、History、Screen

6、假如某个JAVA进程的JVM参数配置如下:

-Xms1G -Xmx2G -Xmn500M -XX:MaxPermSize=64M -XX:+UseConcMarkSweepGC -XX:SurvivorRatio=3,请问eden区最终分配的大小是多少?

解析:

例题:-Xms1G -Xmx2G -Xmn500M -XX:MaxPermSize=64M -XX:+UseConcMarkSweepGC -XX:SurvivorRatio=3, -Xms1G 设置Java堆最小值为1G -Xmx2G 设置Java堆最大值为2G -Xmn500M 设置新生代大小为500M(一个Eden区,两个Survivor区) -XX:MaxPermSize=64M 设置永久代大小为64M -XX:+UseConcMarkSweepGC 设置使用CMS收集器 -XX:SurvivorRatio=3 设置Eden区与Survivor区大小的比例 本题看新生代大小,新生代为500M,三个区比例为311,很容易计算出Eden大小为300M
最新回复(0)