java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > Java日常练习题

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

作者:牛哄哄的柯南

下面小编就为大家带来一篇Java基础的几道练习题(分享)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望可以帮到你

承蒙各位厚爱,我们一起每天进步一点点!(鼠标选中空白处查看答案)

1、以下关于java封装的描述中,正确的是:

正确答案: A

封装的主要作用在于对外隐藏内部实现细节,增强程序的安全性

封装的意义不大,因此在编码中尽量不要使用

如果子类继承父类,对于父类中进行封装的方法,子类仍然可以直接调用

只能对一个类中的方法进行封装,不能对属性进行封装

题解:
封装主要是隐藏内部代码;
继承主要是复用现有代码;
多态主要是改写对象行为。

2、请问所有的异常类皆直接继承于哪一个类?()

正确答案: C

java.applet.Applet

java.lang.Throwable

java.lang.Exception

java.lang.Error

题解:
注意问的是直接继承
在这里插入图片描述

3、Which statement is true for the class java.util.ArrayList?

正确答案: A

The elements in the collection are ordered.

The collection is guaranteed to be immutable.

The elements in the collection are guaranteed to be unique.

The elements in the collection are accessed using a unique key.

The elements in the collections are guaranteed to be synchronized.

题解:
Which statement is true for the class java.util.ArrayList?
下面那个选项有关java.util.ArrayList是正确的
A.The elements in the collection are ordered.
集合中的元素是排序的
B.The collection is guaranteed to be immutable.
集合不可改变
C.The elements in the collection are guaranteed to be unique.
集合中的元素必须唯一
D.The elements in the collection are accessed using a unique key.
集合中元素的键是唯一的
E.The elements in the collections are guaranteed to be synchronized.
集合中的元素是线程同步的
选A,元素在集合中有序,指的是元素插入过程中记录了元素的插入顺序。

4、以下 b 的值是: byte b = (byte)129;

正确答案: B

-126

-127

-128

-129

题解:
byte范围[-128,127]
byte b = (byte)127 , b = 127(未溢出)
byte b = (byte)128 , b = -128(溢出)
byte b = (byte)129 , b = -127(溢出)
 
考察的是数据类型转换。
129 int类型(4个字节)二进制: 00000000 00000000 00000000 10000001
在计算机系统中,数值一律用补码来表示(存储),正数的补码和源码相同。
1、int -> byte(1个字节),截取: 10000001
2、补码转反码:1开始则为负数,负数得到反码是末位-1: 10000000
3、负数的反码转原码(最高位即符号位不变):11111111
4、转换为十进制:-(2^7-1)=-127

5、哪个类可用于处理 Unicode?

正确答案: A

InputStreamReader

BufferedReader

Writer

PipedInputStream

题解:
Unicode是由两个字节组成的,而InputStreamReader是将字节流转换成字符流供我们使用。同时InputStreamReader也可以指定字符集的编码。

6、下面代码的运行结果是( )

public class Arraytest

{

int a[] = new int[6];

public static void main ( String arg[] ) {

System.out.println ( a[0] );

}

}

正确答案: C

null

0

编译出错

运行出错

题解:
在static方法中是不能访问非静态变量 a 的,需要将 a 声明为static,答案才会是 0 ,否则是编译出错

7、以下哪些继承自 Collection 接口()

正确答案: A B

List

Set

Map

Array

题解:
Collection中存放的是一组各自独立的对象,Map中存放的是“键-值”对象。
List和Set都是Collection的子接口,List是一个有序可重复列表,Set是一个无序重复集。
而Array是数组,并不继承Collection接口。
在这里插入图片描述

8、程序中常采用变量表示数据,变量具有名、地址、值、作用域、生存期等属性。关于变量的叙述,()是正确的。

正确答案: A C D

根据作用域规则,在函数中定义的变量只能在函数中引用

在函数中定义的变量,其生存期为整个程序执行期间

在函数中定义的变量不能与其所在函数的形参同名

在函数中定义的变量,其存储单元在内存的栈区

题解:
A 局部变量(local):只能在定义该属性的代码块中使用(方法或语句中)。
B 方法中的局部变量 在方法调用完后就销毁了
C 局部变量与全局变量不能重名。
D 在方法中定义的变量是存放在栈中的

9、有关静态初始化块说法正确的是?

正确答案: A B C

无法直接调用静态初始化块

在创建第一个实例前或引用任何静态成员之前,将自动调用静态初始化块来初始化

静态初始化块既没有访问修饰符,也没有参数

在程序中,用户可以控制何时执行静态初始化块

10、character流和byte流的区别不包括()

正确答案: A B D

每次读入的字节数不同

前者带有缓冲,后者没有。

前者是字符读入,后者是字节读入。

二者没有区别,可以互换。

题解:
字符流和字节流每次读入的字节数是不确定的,可能相同也可能不相同;字符流和字节流都有缓冲流

答案汇总:

1、正确答案: A

2、正确答案: C

3、正确答案: A

4、正确答案: B

5、正确答案: A

6、正确答案: C

7、正确答案: A B

8、正确答案: A C D

9、正确答案: A B C

10、正确答案: A B D

总结

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

您可能感兴趣的文章:
阅读全文