Java日常练习题,每天进步一点点(50)

网友投稿 341 2022-10-07


Java日常练习题,每天进步一点点(50)

目录1、在异常处理中,如释放资源,关闭数据库、关闭文件应由( )语句来完成。2、如下java语句 double x=2.0; int y=4; x/=++y; 执行后,x的值是()3、下面的程序输出的结果是( )4、下面哪种流可以用于字符输入:5、以下不是修饰符final的作用的是( )。6、以下代码执行后输出结果为( )7、jre 判断程序是否执行结束的标准是()8、You have the following code.Which numbers will cause “Test2” to be printed?9、Consider the following code:10、下面关于Applet的说法是正确的是答案汇总:总结

1、在异常处理中,如释放资源,关闭数据库、关闭文件应由( )语句来完成。

正确答案: C

try子句

catch子句

finally子句

throw子句

题解:

try:可能发生异常的语句

catch:捕获,并处理异常(printStackTrace()用来跟踪异常事件发生时执行堆栈的内容)

throw:方法内部抛异常

throws:声明方法异常

finaly:代码中无论是否有异常都会执行,清除资源

2、如下Java语句 double x=2.0; int y=4; x/=++y; 执行后,x的值是()

正确答案: C

0.5

2.5

0.4

2.0

题解:

x/=++y 相当于x=x/(++y),x为2.0 ,++y整体是值为5,但是最终的结果是为double所以是,2.0/5=0.4。

3、下面的程序输出的结果是( )

public class A implements B{

public static void main(String args[]){

int i;

A a1=new A();

i =a1.k;

System.out.println(“i=”+i);

}

}

interface B{

int k=10;

}

正确答案: B

i=0

i=10

程序有编译错误

i=true

题解:

在接口里面的变量默认都是public static final 的,它们是公共的,静态的,最终的常量.相当于全局常量,可以直接省略修饰符。实现类可以直接访问接口中的变量

4、下面哪种流可以用于字符输入:

正确答案: C

java.io.inputStream

java.io.outputStream

java.io.inputStreamReader

java.io.outputStreamReader

题解:

首先B和D排除,题目是要求输入。

A和C之间,inputStream是字节流输入流;而inputStreamReader是对字符流的处理,inputStreamReader将字符流处理成字节流,题目要求是用于处理字符输入,所以选C。

5、以下不是修饰符final的作用的是( )。

正确答案: C

修饰常量

修饰不可被继承的类

修饰不可变类

修饰不可覆盖的方法

题解:

final的作用:

1. 修饰变量,变量的引用地址不可变,但是地址中的内容可以变。

2. 修饰方法,方法不可被重写,但是还是可以重载

3. 修饰类,类不可继承。

不可变类,说的是一个类一旦被实例化,就不可改变自身的状态。常见的比如String和基本数据类型的包装类,对于这种不可变类,一旦在进行引用传递的时候,形参一开始就和实际参数指向的不是一个地址,所以在方法中对形参的改变,并不会影响实际参数。

6、以下代码执行后输出结果为( )

public class Test {

public static void main(String[] args) {

System.out.println("return value of getValue(): " +

getValue());

}

public static int getValue() {

try {

return 0;

} finally {

return 1;

}

}

}

正确答案: A

return value of getValue(): 1

return value of getValue(): 0

return value of getValue(): 0return value of getValue(): 1

return value of getValue(): 1return value of getValue(): 0

题解:

如果try语句里有return,返回的是try语句块中变量值。

详细执行过程如下:

1.如果有返回值,就把返回值保存到局部变量中;

2.执行jsr指令跳到finally语句里执行;

3.执行完finally语句后,返回之前保存在局部变量表里的值。

如果try,finally语句里均有return,忽略try的return,而使用finally的return.

7、jre 判断程序是否执行结束的标准是()

正确答案: A

所有的前台线程执行完毕

所有的后台线程执行完毕

所有的线程执行完毕

和以上都无关

题解:

其实这个题,就是在说守护线程和非守护(用户)线程的问题。后台线程就是守护线程,前台线程就是用户线程。

守护线程:是指在程序运行时在后台提供一种通用服务的线程,这种线程并不是必须的。同时守护线程的线程优先级都很低的。JVM中的GC线程就是一个守护线程,只要JVM启动,GC线程就启动了。

用户线程和守护线程几乎没有什么区别,唯一的区别就在于,如果用户线程都已经退出了,只剩下了守护线程,那么JVM直接就退出了。

8、You have the following code.Which numbers will cause “Test2” to be printed?

switch (x)

{

case 1: System.out.println("Test1");

case 2:

case 3:

System.out.println("Test2");

break;

default:

System.out.println("Test3");

break;

}

正确答案: B C D

0

1

2

3

4

题解:

case 1和case 2后都没有break语句,故都会执行到打印Test2的语句

9、Consider the following code:

String s=null;

Which code fragments cause an object of type NullPointerException to be thrown?

正确答案: A C

if((s!=null)&(s.length()>0))

if((s!=null)&&(s.length()>0))

if((s==null)|(s.length()==0))

if((s==null)||(s.length()==0))

题解:

s为null,因此只要调用了s.length()都会抛出空指针异常。因此这个题目就是考察if语句的后半部分会不会执行。

A,单个与操作的符号& 用在整数上是按位与,用在布尔型变量上跟&&功能类似,但是区别是无论前面是否为真,后面必定执行,因此抛出异常

B,与操作,前半部分判断为假,后面不再执行

C,这里跟 & 和&& 的区别类似,后面必定执行,因此抛出异常

D,或语句,前面为真,整个结果必定为真,后面不执行

10、下面关于Applet的说法是正确的是

正确答案: A B C D

Applet可以在带有Java解释器的浏览器中运行

Applet类必须继承java.applet.Applet

Applet可以访问本地文件

Applet是Object类的子类

题解:

Applet是采用Java编程语言编写的小应用程序,选项描述的全部正确。

答案汇总:

1、正确答案: C

2、正确答案: C

3、正确答案: B

4、正确答案: C

5、正确答案: C

6、正确答案: A

7、gsHcwS正确答案: A

8、正确答案: B C D

9、正确答案: A C

10、正确答案: A B C D

总结

本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注我们的更多内容!


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:2020世界互联网大会,纳网科技携“可信工作证”重磅亮相
下一篇:恭贺厦门纳网科技有限公司被评为2015-2016年度厦门成长型中小微企业
相关文章

 发表评论

暂时没有评论,来抢沙发吧~