二级JAVA笔试-336
(总分:89.50,做题时间:90分钟)
一、选择题(总题数:35,分数:64.00)
1.下列选项中不属于Java虚拟机的执行特点的是( )。
A) 异常处理 B) 多线程 C) 动态链接 D) 简单易学
(分数:2.00)
A) 异常处理 B) 多线程 C) 动态链接 D) 简单易学
(分数:2.00)
A.
B.
C.
D. √
解析:[解析] 简单易学是Java语言和其他高级语言相比所拥有的一个重要特点,但不是Java虚拟机的执行特点。
2.下列不属于软件工程的3个要素的是
A) 工具 B) 过程 C) 方法 D) 环境
(分数:2.00)
A) 工具 B) 过程 C) 方法 D) 环境
(分数:2.00)
A.
B.
C.
D. √
解析:[解析] 软件工程包括3个要素,即方法、工具和过程。方法是完成软件工程项目的技
术手段;工具支持软件的开发、管理、文档生成;过程支持软件开发的各个环节的控制、管理。
3.设变量a、b、c、d和y都已正确定义并赋值。若有以下if语句:
if(a<b)
if(c==d) y=0;
else y=1;
该语句所表示的含义是( )。
(分数:2.00)
if(a<b)
if(c==d) y=0;
else y=1;
该语句所表示的含义是( )。
(分数:2.00)
A.
B.
C. √
D.
解析:
4.下面的是关于类及其修饰符的一些描述,不正确的是 ( )
A) abstract类只能用来派生子类,不能用来创建abstract类的对象
B) abstract不能与final同时修饰一个类
C) final类不但可以用来派生子类,也可以用来创建final类的对象
D) abstract方法必须在abstract类中声明,但abstract类定义中可以没有abstract方法
(分数:2.00)
A) abstract类只能用来派生子类,不能用来创建abstract类的对象
B) abstract不能与final同时修饰一个类
C) final类不但可以用来派生子类,也可以用来创建final类的对象
D) abstract方法必须在abstract类中声明,但abstract类定义中可以没有abstract方法
(分数:2.00)
A.
B.
C. √
D.
解析:[解析] 用abstract修饰的类称为抽象类。抽象类是一种没有完全实现的类,它必须至少包含一个抽象方法,包括抽象方法的类必须声明为抽象类。抽象类不能被实例化,只能作为父类去派生其他子类,选项A正确。定义一个既用abstract又用final修饰的类是不合法的。因为抽象类本身是不完整的,它需要子类提供具体的实现方法,然而final类则不允许拥有子类,两者之间的矛盾显而易见,选项B正确。如果用abstract方法必须要在abstract类中声明,但abstract类中可以没有abstract方法,选项D正确。使用final修饰的类为最终类,它不能派生任何子类,显然选项C的说法是错误的。
5.面向对象设计时,对象信息的隐藏主要是通过( )实现的。
A.对象的封装性 B.子类的继承性
C.系统模块化 D.模块的可重用性
(分数:2.00)
A.对象的封装性 B.子类的继承性
C.系统模块化 D.模块的可重用性
(分数:2.00)
一维数组的定义和初始化 A. √
B.
C.
D.
解析:
6.开发软件时对提高开发人员工作效率至关重要的是( )。
A.操作系统的资源管理功能 B.先进的软件开发工具和环境
C.程序人员的数量 D.计算机的并行处理能力
(分数:2.00)
A.操作系统的资源管理功能 B.先进的软件开发工具和环境
C.程序人员的数量 D.计算机的并行处理能力
(分数:2.00)
A.
B. √
C.
D.
解析:
7.下面程序段的输出结果是( )。
class Base
int i;
Base()
add(1);
void add(int v)
class Base
int i;
Base()
add(1);
void add(int v)
i+=v;
void print0
System.out. println(i);
class Extension extends Base
Extension()
add(2);
void add(int v)
i+=v*2;
public class Test
public static void main(String args[])
bogo(new Extension());
static void bogo(Base b)
b. add(8);
b. print();
A.9 B.18
C.20 D.22
(分数:2.00)
A.
B.
C.
D. √
解析:
8.有以下程序:
void f(int *x, int *y)
int t:
t=*x;*x=*y;*y=t;
void main()
int a[8]=1,2,3,4,5,6,7,8,i,*p,*q;
p=a;q=&a[7];
while(p<q)
f(p,q);p++;q--;
for(i=0;i<8;i++)
printf("%d,",a[i]);
程序运行后输出的结果是( )。
int t:
t=*x;*x=*y;*y=t;
void main()
int a[8]=1,2,3,4,5,6,7,8,i,*p,*q;
p=a;q=&a[7];
while(p<q)
f(p,q);p++;q--;
for(i=0;i<8;i++)
printf("%d,",a[i]);
程序运行后输出的结果是( )。
A.8,2,3,4,5,6,7,1, B.5,6,7,8,1,2,3,4,
C.1,2,3,4,5,6,7,8, D.8,7,6,5,4,3,2,1,
(分数:2.00)
C.1,2,3,4,5,6,7,8, D.8,7,6,5,4,3,2,1,
(分数:2.00)
A.
B.
C.
D. √
解析:
9.使用如下哪一个保留字可以使只有在定义这个类的包中的其他类才能访问此类?______
A) abstract B) private C) protected D) 不使用保留字
A) abstract B) private C) protected D) 不使用保留字
(分数:2.00)
A.
B.
C.
D. √
解析:[解析] 类的默认访问控制策略是不使用保留字来定义类,这会限制其他包中的类访问本类,此类只能被同一个包中的类所访问和引用,也不能用import语句引用,所以选项D正确。
10.下面有关Applet执行的操作说法正确的是( )。
Ⅰ:在运行时调用其他程序
Ⅰ:在运行时调用其他程序
Ⅱ:不能进行文件读写操作
Ⅲ:不能装载动态连接库和调用任何本地方法
Ⅳ:试图打开一个socket进行网络通信,但是所连接的主机并不是提供Applet的主机
A) Ⅱ、Ⅲ B) Ⅱ、Ⅳ
C) Ⅰ、Ⅱ D) Ⅲ、Ⅳ
(分数:1.00)
Ⅲ:不能装载动态连接库和调用任何本地方法
Ⅳ:试图打开一个socket进行网络通信,但是所连接的主机并不是提供Applet的主机
A) Ⅱ、Ⅲ B) Ⅱ、Ⅳ
C) Ⅰ、Ⅱ D) Ⅲ、Ⅳ
(分数:1.00)
A. √
B.
C.
D.
解析:[解析] Java虚拟机为Applet提供能够良好运行的沙箱,一旦它们试图离开沙箱则会
被禁止。由于小应用程序是通过网络传递的,这就不可避免地使人想到会发生安全问题。例如有人编写恶意程序通过小应用程序读取用户密码并散布到网络上,这将会是一件非常可怕的事情。所以,必须对小应用程序进行限制。浏览器禁止Applet执行下列操作。
①在运行时调用其他程序。
②文件读写操作。
③装载动态连接库和调用任何本地方法。
④试图打开一个socket进行网络通信,但是所连接的主机并不是提供Applet的主机。
①在运行时调用其他程序。
②文件读写操作。
③装载动态连接库和调用任何本地方法。
④试图打开一个socket进行网络通信,但是所连接的主机并不是提供Applet的主机。
11.Applet中paint()方法使用( )类型的参数。
A) Graphics B) Graphics2D C) String D) Color
(分数:2.00)
A) Graphics B) Graphics2D C) String D) Color
(分数:2.00)
A. √
B.
C.
D.
解析:[解析] paint方法的定义为public void paint(Graphics g)。
12.下列叙述中不正确的是( )。
A) 一个数据结构中的元素在计算机存储空间中的位置关系与逻辑关系可能不同
B) 一个数据结构中的元素在计算机存储空间中的位置关系与逻辑关系一定不同
C) 数据的存储结构,也称数据的物理结构
D) 数据的存储结构与数据的逻辑结构是不同的
(分数:2.00)
A) 一个数据结构中的元素在计算机存储空间中的位置关系与逻辑关系可能不同
B) 一个数据结构中的元素在计算机存储空间中的位置关系与逻辑关系一定不同
C) 数据的存储结构,也称数据的物理结构
D) 数据的存储结构与数据的逻辑结构是不同的
(分数:2.00)
A. √
B.
C.
D.
解析:[解析] 一个数据结构中的元素在计算机存储空间中的位置关系与逻辑关系不一定相同,例如在家庭成员的数据结构中,“儿子”和“女儿”都是“父亲”的后件,但在计算机存储空间中,根本不能将“儿子”和“女儿”这两个数据元素的信息都紧邻存放在“父亲”这个数据元素后边。但在一年四季的数据结构中,“春”是“夏”的前件,在计算机存储空间中,就可以把“春”存储在“夏”的前面。数据在计算机存储空间中的存放形式称为数据的存储结构,也称数据的物理结构。
13.设有以下函数:
void fun(int n,char*s)……
则下面对函数指针的定义和赋值均正确的是( )。
A.void (*pf)(); pf=fun; B.void *pf(); pf=fun;
C.void*pf();*pf=fun; D.void(*pf)(int,char);pf=&fun;
void fun(int n,char*s)……
则下面对函数指针的定义和赋值均正确的是( )。
A.void (*pf)(); pf=fun; B.void *pf(); pf=fun;
C.void*pf();*pf=fun; D.void(*pf)(int,char);pf=&fun;
(分数:2.00)
A. √
B.
C.
D.
解析:
14.URL类在______包中定义。
A.java.applet B.java.io C.java D.java.util
(分数:2.00)
A.java.applet B.java.io C.java D.java.util
(分数:2.00)
A.
B.
C. √
D.
解析:
15.执行下面程序后输出的正确结果是( )。
public class Test
public static void main(String args[])
System.out.print(100%3);
System.out.print("/");
System.out.print(100%3.0);
public class Test
public static void main(String args[])
System.out.print(100%3);
System.out.print("/");
System.out.print(100%3.0);
A) 1,1 B) 1,1.0
C) 1.0,1 D) 1.0,1.0
(分数:2.00)
C) 1.0,1 D) 1.0,1.0
(分数:2.00)
A.
B. √
C.
D.
解析:[解析] 本题考查Java语言%运算符的使用。%运算符是模数除,也就是求余,表达式为: op1%op2 Java中的二元运算符适用于所有数值型数据类型,但需要注意,如果两个操作数全是int型,结果也是int型,100%3=1;如果两个操作数全是float型,或其中一个是float型,而另外一个是整型时,表达式结果是float型, 100%3.0=1.0,所以选项B为正确
答案。务必注意操作数类型不同时运算结果的类型。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论