Java程序设计试题一及答案
一、选择题(每题2分,共40分)
1、在 Java 中,用 package 语句说明一个包时,该包的层次结构必须是( )
A、与文件的结构相同 B、与文件目录的层次相同
C、与文件类型相同 D、与文件大小相同
2、Java语言的类型是( )
A、面向对象语言 B、面向过程语言
C、汇编程序 D、形式语言
3、在 Java 中,所有类的根类是( )。
A、java.lang.Object B、java.lang.Class
C、java.applet.Applet D、java.awt.Frame
4、( )是不能被当前类的子类重新定义的方法。
A、抽象方法 B、私有方法 C、最终方法 D、构造方法
5、Java的字符类型采用的是Unicode编码方案,每个Unicode码占用( )个比特位。
A、8 B、16 C、32 D、64
6、下列对继承的说法,哪个是正确的? ( )
A、子类能继承父类的所有方法和状态
B、子类能继承父类的非私有方法和状态
C、子类只能继承父类public方法和状态
D、子类只能继承父类的方法,而不继承状态
7、下列哪些内容是异常的含义? ( )
A、程序的语法错
B、程序运行中所发生的异常事件
C、程序预先定义好的异常事件
D、程序编译错误
8、下列命令中,哪个命令是Java的编译命令?( )
c和java先学哪个A、javac B、java
C、javadoc D、appletviewer
9、在Java中,子类可继承父类中的方法,有时子类并不想原封不动地继承父类的方法,而是想作一定的修改,这种面向对象程序特性称为( )
A、隐藏 B、重载
C、覆盖 D、Java不支持此特性
10、若数组a定义为int[][]a=new int[3][4],则a是 ( )
A、一维数组 B、二维数组
C、三维数组 D、四维数组
11、下列关于Java语言特点的叙述中,错误的是 ( )
A、Java是面向过程的编程语言
B、Java支持分布式计算
C、Java是跨平台的编程语言
D、Java支持多线程
12、用来导入已定义好的类或包的语句是( )
A、public B、class
C、public class D、import
13、SQL语言又称为( )
A、结构化定义语言 B、结构化控制语言
C、结构化查询语言 D、结构化操纵语言
14、下列的哪个选项可以正确用以表示十六进制值16?( )
A、0x8 B、0x10 C、08 D、010
15、要想定义一个不能被子类继承的的类,在类定义中必须加上修饰符( )。
A、 final B、 public
C、 private D、abstract
16、Java源文件和编译后的文件扩展名分别为( )
A、.class和 .java B、.java和 .class
C、.class和 .class D、.java和 .java
17、设数组age由以下语句定义
int age=new int[9];
则数组的最后一个元素的正确引用方法为( )
A、age[9] B、age[0] C、age[0 ] D、age[8]
18、以public修饰的类如:public class HW{ } 则HW( )
A、不能被其它类继承 B、仅能被本程序包中的类使用
C、不能被任意其它类使用 D、可被其它程序包中的类使用
19、属于main()方法的返回类型是( )
A、public B、static
C、void D、main
20、下列构造方法的调用方式中,正确的是( )。
A、按照一般方法调用
B、由用户直接调用
C、只能通过 new 自动调用
D、被系统调用
二、填空题(每空2分,共20分)
1、循环语句包括_________________语句、while语句和__________________语句。
2、在Java语言中,实型常量7.6545默认为___________________类型的数据。
3、声明异常抛出用_______________子句来完成声明,它包含在方法的声明之中。
4、顺序执行以下两个语句的输出结果是:_____________________。
String s="我喜欢学习计算机";
System.out.println(s.length());
5、用_____________________修饰的方法,称为静态方法。
6、如果有一个类MyFrame是Frame的子类,能够被不同包中的类所使用,请写出该类的声明头:_____________________________________________。
7、被关键字_____________修饰的方法是不能被当前类的子类重新定义的方法。
8、面向对象技术具有__________________、_________________多态性等特性。
三、判断题(每小题2分,共20分)
1、Java语言的标识符的命名是区分大小写的。 ( )
2、Java源程序的文件名与public类型的类名必须相同。 ( )
3、构造函数是类的一种特殊方法,它的方法名必须与类名相同( )
4、编译语句double a=37.2; 不会出现编译错误。 ( )
5、定义完数组后,我们可以根据实际需要动态调整数组大小。 ( )
6、子类能继承父类的所有方法和属性。 ( )
7、方法的重载是指子类和父类具有相同的名字、相同的参数表。( )
8、在Java中子类只能继承父类public方法和属性。 ( )
9、Java语言是一种完全的面向对象的程序设计语言。 ( )
10、在面向对象方法中,类的实例称为对象。 ( )
四、综合题(第1题12分,第2题8分共20分)
1、写出一个类Computer,并由该类做基类派生出子类Notebook和Desktop。其中Computer类具有cpu、ram两个成员变量,分别为String类型、整型,且具有公有的getRam成员方法,用于返回ram变量的值。Notebook类具有成员变量factory, 为String类型,Desktop类具有comclass成员变量, 为String类型。
2、编写程序,在屏幕上输出200以内不能被3整除的数和(1+2+4+5+7+…+200)。
public class MyJava{
public static void main(String[] args) {
int i,s = 0;//定义循环变量 i,总和 s
System.out.println("1+2+4+5+7+…+200的和为:"+s);
}
参考答案
一、 选择题
1-5 BAACB 6-10 BBACB 11-15 ADCBA 16-20 BDDCC
二、填空题
1、for、do while 2、double 3、throws 4、8
5、static 6、public class MyFrame extends Frame
7、final 9、封装性、继承性
三、判断题
1-5 √√√√× 6-10 ×××√√
四、综合题
1、
class Computer {
String cpu;
int ram;
public int getRam(){
return ram;
}
}
class Notebook extends Computer {
String factory;
}
Class Desktop extends Computer {
String comclass;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论