21秋西电《JAVA程序设计》模拟试题1答案
学习中心 姓名 学 号 西安电子科技大学网络教育学院200 学年第 学期《Java程序设计》模拟试题1
( 90 分钟)题号
一
二
三
四
五
总分
题分
40
30
10
5
15
100
得分
一、选择题(4分/题,共10个,共40分)
Java 2平台有三个版本,请你下列不是Java 2平台版本的选项。
(A) J2ME
(B) J2SE
(C ) J2EE
(D) JSP
答案:D。
解释:Java2平台有三个版本,J2ME针对微型设备开发,J2SE是标准版,J2EE是企业版。JSP是一种服务器页面,不是Java2平台的版本。在Java语言中,下列哪个变量名是不正确的.
(A) large (B) 2much
(C) $money (D) _postCode
答案:B。
解释:。Java变量的名字可以是字母,下划线,美元符号开头,但不可以是数字开头。3.编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。?(A) .java?(B) .class?(C) .html? (D) .exe
答案:B。
解释:.class文件为Java的字节码文件。.java是Java源程序文件。.html是静态页面文件,和Java没有关系。.exe是windows的可执行文件。
下列关于接口的描述哪个是正确的?
接口用interface定义
接口不能继承
一个类实现一个接口,不必实现该接口中的所有方法
接口可以实例化
答案:A。
解释:选A。B不选,接口可以不仅可以继承,还可以继承多个接口;C不选,实现接口必须实现接口中的所有方法。D不选,接口不能实例化。下列程序片断用的是什么机制?
class Cat{
String name;
int age;
Cat (){}
Cat (String n, int a){name=new String(n); age=a;}
Cat (String n){ name=new String(n);}
}
(A)方法的覆盖 (B)构造函数重载
(C)多态 (D)这是错误的代码
答案:B。
解释:构造函数名字相同,参数不同,属于构造函数重载。不允许作为类及类成员的访问控制符的是( )。(A)public????? (B)private(C)static????? (D)protected
答案:C。
解释:访问控制符有public,private,protected,friendly。static用来修饰静态变量。7. 如果这样(java myprog good morning)运行下面的程序,输出什么?
public class myprog{public static void main(String argv[]) {System.out.println(argv)}
}
(A) myprog
(B) good
(C ) morning
(D)Exception raised:
"java.lang.ArrayIndexOutOfBoundsException: 2"
答案:D。
解释:题目中的执行语句传递的参数中,arg表示“good”arg表示“morning”,arg则越界。8. 选出不是java异常处理关键字的选项?
try
catch
throws
error
答案:D。
解释:选D。java异常处理关键字有5个,try,catch,throw,throws,finally。9. 哪个关键字用来定义一个抽象类?
final
static
interface
abstract
答案:D。
解释: abstract用来修饰一个抽象类。final表示某个变量,方法,类不可以改变。static修饰静态成员或函数。interface用来定义接口。10. 下面哪段代码会出现编译错误?
A) import java.awt.*;package Mypackage;class myclass{}
B) class myclass()package mypackage;
C) package mypackage;import java.awt.*;class myclass{}
D) class myclass{}import java.awt.*;
答案:A。
解释:包的接口不能出现大写字母。其它选项均合法。
填空题(3分/空,共10个,共30分)
1.面向对象程序设计语言的三大特性是: , , 。
答案:封装、继承、多态
解释:考察基本概念,面向对象设计的三大基本特性。
2.在一个类的属性中,如果要定义一个常数,应该在该属性前面加关键字 。
答案:final
解释:考察Java的关键字,final用来定义一个常量。
3.Java中,用哪个关键字创建对象: 。
答案:new
解释:Java语法规定必须使用new关键字来创建对象。
4.在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用____2___字节内存空间。
答案:2
解释:考察Java内部对字符类型的实现。Unicode采用2字节编码。
5.创建一个名为 MyPackage 的包的语句是 ,该语句应该放在程序的位置为 。
答案:package mypackage 首行
解释:考察Java的语法。
6.在Java程序中,通过类的定义只能实现 继承,但通过接口的定义可以实现 继承关系。
答案:单重 多重
解释:Java不像C++,Java只有单继承,所以只能通过实现接口来弥补多重继承的功能。
三、读程题 ( 5分/题,共2个,共10分)
1. 下列程序编译运行后输出什么?
public class test {
public static void main (String[] args) {
Object[] ov;
String[] sa = { "Jack", "Rose", "Lee" };
ov = sa;
System.out.println("Color = " + ov);
}
}
答:Color=Rose
解释:考察数组的下标。下标从0开始,所以ov指向的是第二个元素“Rose”。
2. 下面的代码执行结果是什么?
public class TestThis{
private int i=0;
TestThis increment(){
i++;
return this;
}
void print(){
System.out.println(i);
}
public static void main(String[] args){
TestThis x = new TestThis();
x.increment().increment().increment().print();
}
}
答:3
解释:考察程序的执行流程,结果是3。四.请说出import java.awt.*;语句中“*”的含义以及包的作用。(5分)
答案:代表java.awt包下面所有的java类。
五. 阅读程序,回答问题。(15分)
如果有这样一个Java源文件如下,阅读程序,回答下面几个问题:public class Shelf{
public static void main(String[] arguments) {
System.out.println("Shelf!");
Book b = new Book();
b.get();
}
}
class Book {
public void get() {
System.out.println(" book!");
}
}class Student {
public void read() {
System.out.println ("read a book!");
}
}
请写出这个文件的完整名称(2分)
答:Shelf.java
解释:Java文件的名字必须和public的类名字相同。
请写出在命令行上如何编译这个文件(2分)
答:javacShelf.java
请写出这个文件编译后产生几个类文件(2分),它们的完整名称分别是什么?(3分)
答:编译后产生三个类文件。分别是Shelf.class , Book.class, Student.class
解释:Java编译器会根据类名,每个类生成一个class文件。
请写出在命令行上如何运行这个程序?(3分)
答:java Shelf
这个程序的运行结果是什么?(3分)
答:Shelf!
book!
页:
[1]