牛客选择题3

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);
}
}

在这里插入图片描述
不会初始化子类的几种

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

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

猜你喜欢

转载自blog.csdn.net/qq_42390340/article/details/108393192