您的当前位置:首页正文

最新精选2019年大学JAVA程序语言设计期末完整题库500题(含参考答案)

2023-11-25 来源:年旅网


2019年大学JAVA期末题库500题[含参考答案]

一、判断题

1.System.out.println(4|3)能打印出什么结果?( c ) 6 0 1 7

2.若有byte b=6;short s=20;则表达式b+s的值的类型是( C )。 byte int short char

3.在Java中,关于类与对象的说法,正确的是( d )。 代码:string s = new string(); 中的string 是类,s是对象 对像包括类,类是对象有具体表现

对象拥有自己的行为和属性,和对应的类没有关系 学生,可以看作是张三类或者李四类的对象

4.在java中,变量名正确的是(c )。 $(student) 1_people _ok \"name\"

5.在java中,有下面代码,其中可以正确编译的是( a )。 double d = (int)2; int I = 1.34; int I = (double)1; 以上都对

6.指出正确的表达式( b )。 byte b=128; Boolean x=null; Long m= oxfffL; Double d=0.9239d

7.下面对于方法的描述,正确的有( c )。 方法必须返回一个值 方法可以返回多个值 在方法内可以定义其他方法 方法可以有多个参数

8.5 0

9.已知:int x=10,y=4; x/y的值为(c )。 2

10.以下Java语句,会产生编译错误的是( a )。 if(2==3) System.out.println(\"Hi\"); if(2=3) System.out.println(\"Hi\"); if(true) System.out.println(\"Hi\"); if(2!= 3) System.out.println(\"Hi\");

11.在JAVA中,( )关键字用来终止循环语句。c Return Continue Break Exit

12.在Java语言中,下面变量命名合法的有( a )。

variable123 123varable Private(private) -variable_123

13.在java中,下列( c)语句不能通过编译。 String s=\"john\"+\"was\"+\"here\"; String s=\"john\"+3; float f=5+5.5; int a=3+5;

14.以下( c )不是Java的原始数据类型。 short boolean unit float

15.在Java中,下面对于构造方法的描述正确的是(D )。 类必须显式定义构造方法 构造方法的返回类型是void

构造方法和类有相同的名称,并且不能带任何参数 一个类可以定义多个构造方法

16.java所有类的父类是( d )。 Father Lang Exception Object

17.继承是面向对象的重要特征,它可以( b )。 优化程序的存储空间

使代码重用,降低程序复杂程度 保证类和接口的安全 更容易地实例化类得对象

18.下列整数的定义中,错误的是( a )。 int f=314.0; int a=012; int i=189; int d=0x123;

19.下列变量的定义中,错误的是( b )。 int x=8; float f;d; String s=\"hello\"; boolean b=true;

20.下列代码的执行结果是:int a=\"hello\".length();system.out.println(a); ( a ) 6 5 2 10

21.下列特点中不属于java的是(d )。 多线程 多继承 跨平台 动态性

22.在JAVA中下面哪一行代码不出现编译警告或错误( d )。 float f=1.3; char c=\"a\"; byte b=257; int i=10;

23.下列选项中属于字符串常量的是(a )。 'abc' \"abc\" (abc) {abc}

24.对public void add(int a) {…}方法的重载方法应返回(b ) void

int float 任何类型

25.下列数中为八进制的是( c )。 27 0x25 026 028

26.下列选项中,与成员变量共同构成一个类得是( a )。 关键字 方法 运算符 表达式

27.下列不属于表达式语句的是( c )。 ++i; --j; b#a; b+=a;

28.下列不属于关系运算符的是(c )。 > < >> !=

29.内部数据类型byte的取值范围是( B ) 0——65 -128——127 –32768——32767 256—— 255

30.在类的说明符中,被指定为私有的数据可以被以下( C )访问。

程序中的任何方法 其他类的成员方法 本类中的成员方法 子类中的成员方法

31.若定义int a=2,b=2,下列表达式中值不为4的是( a )。 a+(++b); a*(b++); a+b; a*b;

32.表达式6.0/2的运算结果是(B )。 3

33.若有定义 class A{int x,y; static float f(int a){…} float g(int x1,int x2){…}} 及A a1=new A();则下列用法中非法的是( C )。 A.g(3,2) A.f(3) a1.f(4) a1.g(2,5)

34.若有int x=10;char c='d';则表达式a+c的值的类型是( A )。 char int float byte

35.有如下定义:float a=1.0f;double b=2.0;则表达式a+b的值的数据类型为( B )。 float double char int

36.有如下定义:float a=3.14f;byte b=3;则表达式a+b的值的数据类型为(D )。 byte

int char float

37.若a的值为1,则执行语句if((a>0)||(a++<0)) a++;后,a的值是(B )。 3 2 1 0

38.数组int results[]=new int[6]所占存储空间是( C )字节? 6 12 24 48

39.下列关于语句for(表达式1;表达式2;表达式3)的描述中,错误的是( A )。 表达式1和表达式3中不能含有多条语句 表达式2为空时,默认规定为恒真

for语句中定义的循环控制变量只在该块内有效 表达式1.表达式2和表达式3都是可选的

40.和while(true)等价的for语句是(C )。 for(true) for(1) for(;;) for(,,)

41.5 3 4 5

42.设x=1 , y=2 , z=3

则执行语句 y+=z--/++x;后y的值是( B )。

43.下面哪个是非法的( B )。 int I=32; float f=45.0; double d=45.0; char c ='a';

44.Java源文件和编译后的文件扩展名分别为(B )。 .class和 .java .java和 .class .class和 .class .java和 .java

45.下面哪一个不是Java中合法的标识符( A )。 $per twoNum _myVar *point

46.在Java中,下列说法正确的是( c )。 编写的源程序保存在扩展名为class的文件中 源程序编译后保存在扩展名为java的文件中 编写的源程序必须先编译后才能运行 程序员可以读懂扩展名为class的文件

47.下列运算符合法的是( A )。 && <> if :=

48.如果要让一个变量的值不被修改,可以将这个变量用关键字( C )修饰。 static super final finally

49.在Java中,下面关于构造方法的描述正确的是(D)。 类必须有显式构造函数 它的返回类型是void

它和类有相同的名称,但它不能带任何参数 以上皆非

50.我们在方法前面加上关键字(C )后,该方法不需要对象就可以调用。 this public static final

51.下列语句中,属于多分支语句的是(B )。 if语句 switch语句 do while语句 for语句

52.若数组a定义为int[][]a=new int[3][4],则a是(B )。 一维数组 二维数组 三维数组 四维数组

53.在类的定义中,构造方法的作用是( D )。 保护成员变量 读取类的成员变量

描述类的特征 初始化成员变量

54.下列的哪个赋值语句是不正确的?(A ) float f = 11.1; double d = 5.3E12; float d = 3.14f ; double f=11.1E10f;

55.0 2

56.下列语句正确的是(A )。 形式参数可被视为局部变量 形式参数可被全局变量

形式参数为方法被调用时,是真正被传递的参数 形式参数不可以是对象

57.变量命名规范说法正确的是( B ) 变量由字母.下划线.数字.$符号随意组成 变量不能以数字作为开头 D和d在java中是同一个变量 不同类型的变量,可以起相同的名字

58.执行下面代码结果( C )。for(int i=0; ;){ System.out.println(\"这是 \"+i); break; }

语法错误,缺少表达式2和表达式3 死循环

程序什么都不输出 输出:这是0

59.下面代码的执行结果是(B )。int i=2;System.out.println(i++); 3

2 1 0

60.执行下列语句后,j的值为(A )。int i=1;j=++i; 2 1 0 3

61.将读取的内容处理后再输出,适合用下列哪种流( A)。 PipedStream FilterStream FileStream ObjectStream

62.Java语言使用的字符码集是( D )。 ASCII BCD DCB Unicode

63.定义一个类,必须使用的关键字是(B )。 public class interface static

64.s=s.replaceAll (\"he\表示( C)。 把s中的所有she换成he 把s中的第一个she换成he

把s中的所有he换成she并把新的字符串赋给s 把s中的第一个he换成she并把新的字符串赋给s

65.当使用getChars()时,正确的表述是( D)。 该函数用于字符数组转换成字符串 该函数不需要任何参数

该函数用于float或double转换成字符数组 该函数用于从字符串转换成字符数组

66.设字符串变量str1=\"abc\";str2=\"defg\";则str1.compareTo(str2)的返回值为(B )。* 2 -3 3 -2

67.String date=\"Today is Sunday\";把date转换成全小写的语句是( B)。 toLowerCase(date); date.toLowerCase(); date.toUpperCase(); toUpperCase(date);

68.String(byte[ ],int,int)中,第三个参数用来生成字符串的byte型数组的( A)。 长度 起始位置 终止位置 终止位置+1

69.执行代码String s=new String(\"Hello\")后,正确的结论是(D )。 s最后一个索引值为5 s的值和\"Hello\"并不一样 s.length为4 s.length 为5

70.下列关于字符串的描述中,错误的是( C)。 Java语言中,字符串分为字符串常量和字符串变量2种 两种不同的字符串都是String类的对象 Java语言中不再使用字符数组存放字符串

Java Application程序的main()的参数args[]是一个String类

71.编译Java程序的命令是( B ) appletviewer javac java javadoc

72.下列关于JAVA语言特性的描述中,错误的是( D )。 支持多线程操作 JAVA程序与平台无关

JAVA程序可以直接访问Internet上的对象 支持单继承和多继承

73.

74.

75.以下哪些修饰符可以使变量对于任何其他类都是不可视的,包括子类?(private public final abstact

76.以下关于继承的叙述正确的是( A )。 在Java中类只允许单一继承 在Java中一个类只能实现一个接口

C ) 在Java中一个类不能同时继承一个类和实现一个接口 在Java中接口只允许单一继承

77.java中用来定义包的关键字是( a )。 package import com class

78.在Java中下列关于继承的论述中,错误的是( C )。 继承具有传递性

继承关系也称为“即是”(is a)关系 支持多继承

继承提高了系统的可重用性

79.编程,找出长度为10\\的数组中,数组元素的最大值和最小值,并输出。 public class a {

public static void main(String[] args) {

double x[]={25.3,56.3,15.3,125.25,465.36,456.32,458.21,456.325,4856.3215,41.6}; double max=x[0]; int i;

for(i=0;i<10;i++) { if (max<=x[i]) max=x[i]; } double min=x[0]; int j;

for(j=0;i<10;i++) { if (min>=x[j]) min=x[j]; }

System.out.println(\"最大数是\"+max); System.out.println(\"最小数是\"+min); }}

80.类中不加任何访问权限限定的成员属于( A )。 default public private protected

81.要想使定义该类所在的包之外的类不能访问这个类,使用关键字( A)。 不用 private final protected

82.Java中,如果类C是类B的子类,类B是类A的子类,那么下面描述正确的是( A )。

C不仅继承了B中的成员,同样也继承了A中的成员 C只继承了B中的成员 C只继承了A中的成员 C不能继承A或B中的成

83.一个对象创建包括的操作中,没有下面的( A )。 释放内存 对象声明 分配内存 调用构造方法

84.关于对象成员占用内存的说法哪个正确( D )。**** 同一个类的对象共用同一段内存

同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间 对象的方法不占用内存 以上都不对

85.若有定义如下 class A{int x,x1; int f(){int a;…} int g(){int y;…}} ,则不正

确的赋值为(D )。*** 在f()中a=x 在f()中x=a 在f()中x=x1 在g()中y=a

86.定义一个接口必须使用的关键字是( C )。 public class interface static

87.若声明一个类不能被继承,即不能有子类,用关键字( A )。 final finally abstract super

88.下述概念中不属于面向对象方法的是( D)。 对象.消息 继承.多态 类.封装 过程调用

89.在Java中用什么关键字修饰的方法可以直接通过类名来调用?( D)*** static final private void

90.声明成员变量时,如果不使用任何访问控制符(public, protected, private),则以下哪种类型的类不能对该成员进行直接访问 ( D )。 同一类

同一包中的子类 同一包中的非子类 不同包中的子类

91.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数.类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序的特性称为( C )。 隐藏 覆盖 重载

Java不支持此特性

920 16 5 不确定

StringBuffer

s=new

StringBuffer(\"Hello\");int

len1,len2;len1=s.capacity();len2=s.length();则len1-len2=(B )。

93.his关键字的含义是表示一个( D )。 指针 当前对象 一个类 一个方法

94.下列哪项不是Java标准库中OutputStream类的子类(D )。 ByteArrayOutputStream DataOutputStream PrintStream

LineNumberOutputStream

95.StringBuffer append(char[ ],int int1,int int2)表示( A)。 向一个字符串追加字符数组,范围从数组的索引int1开始,到索引int2结束 向一个字符串追加字符数组,范围从数组的索引int1开始,到索引int2-1结束

向一个字符串追加字符数组,范围从数组的索引int1开始,长度为int2 向一个字符串追加字符数组,范围从数组的索引int1开始,长度为int2-1

96.关于适配器类,下列哪一项是不正确的( B)。 适配器类用于简化事件处理程序编写 所有的监听器接口都有对应的适配器类 事件监听器类必须实现所有的抽象方法

适配器类只是实现了接口中所有抽象方法的空类,本身无实际功能

97.关于GUI组件集Swing,下列哪一项是不正确的( B)。 在AWT基础上开发 重新设计了所有的布局方式 比AWT提供了更多更强的组件 能处理更多的事件

98.对于标准输入流,下列哪一项是不正确的( A)。** System.in只能提供字节为单位的数据输入

System.in被通过InputStreamReader和BufferedReader类的对象进行了两次包装 输入的字符串需要二次编程转化为具体数据类型 BufferedReader可以提供以行为单位的输入

99.关于InputStream的描述,下列哪一项是不正确的( D)。 以字节为单位输入 是多个流类的父类

StringBufferInputStream是其中一个子类 一般不用来处理文件输入

100.关于窗口事件WindowEvent类,处理的事件不包括(B )。 窗口打开 窗口移动 窗口缩小 窗口激活

101.对于FileInputStream类,下列哪一项是不正确的(D )。 从InputStream类继承 不支持InputStream的有些方法 不适合读取字符文件,适合读取字节文件 能实现文件的倒序读取

102.关于TextEvent类,下列哪一项是不正确的(A )。 只有用户键盘输入触发该类事件,粘贴文本不能触发 文本框或文本域内容变化时,触发该类事件 监听器为TextListener,只有一个抽象方法 注册组件调用addTextListener()方法

103.关于字符流,下列哪一项是不正确的( B)。 为方便16位Unicode字符处理而引入的 可处理任意编码的非ASCII字符 以两个字节为基本输入输出单位 有两个基本类:Reader和Writer

104.事件类MouseEvent的监听类MouseListener的抽象方法有几个(B )。 4 5 6 7

105.Java标准输入输出流的标准流对象数为( B)。 2 3 4 5

106.下列哪一项不是windows.unix.Mac OS下中的回车符号( )。 \\n

\\r \\r\\n \\n\\r

Window下的回车是\\r换行是\\n.unix回车和换行是\\n.Mac OS的回车和换行是\\r

107.以下哪一个为标准输出流类( C)。 DataOutputStream FilterOutputStream PrintStream BufferedOutputStream

108.若有char c='8';short s=20;则表达式c+s的值的类型是( A )。 char short int byte

109.对于ByteArrayInputStream类,下列哪一项是不正确的( A)。 和InputStream类有很大的不同 有四个成员变量:buf.count.mark.pos 可以重读部分输入流数据 可以对输入流数据字节数计数

110.关于XY Layout布局方式,下列哪一项是不正确的( C)。 基于X和Y坐标的绝对位置定位内部组件 使用时依赖于特定包 与平台无关 不利于程序移植

111.以下不是Reader基类的直接派生子类的是(C )。 BufferedReader FilterReader FileReader PipedReader

112.StringBuffer reverse();表示(A )。 字符串反转 字符串清空 字符串的赋值 字符串删除

113.String与StringBuffer最大的区别在于( D)。 它们没有区别

String对原字符串的拷贝进行操作,而StringBuffer对原字符串本事操作 StringBuffer拥有更多相关函数 String更节省空间

114.关于main方法中的arg[],下列哪个表述是正确且全面的( A)。

main方法中的参数是字符串数组arg[ ],args是命令行参数,字符串数组arg[ ]的元素是在程序运行时从命令行输入的。

main方法中的参数是字符串数组arg[ ],args是命令行参数,字符串数组arg[ ]的元素是在程序编译时从命令行输入的。

main方法中的参数是字符串数组arg[ ],args是命令行参数,字符串数组arg[ ]的元素是在程序编译时直接写入txt文件的。

main方法中的参数是字符串数组arg[ ],args是命令行参数,字符串数组arg[ ]的元素可以在任何需要的时刻内输入。

第11.14章:(63)

115.下列哪一项不是AWT的组件类别( B)。 容器类组件 事件型组件 布局类组件 普通类组件

116.关于事件处理程序编写步骤,不包括哪一项(D )。

实现某一事件的监听器接口(定义事件处理类并实现监听器接口) 在事件处理类中根据实际需要实现相应的抽象方法 给组件注册相应事件监听器以指明该事件的事件源有哪些 触发该类事件并测试

117.关于Grid Layout布局方式,下列哪一项是不正确的( A)。 会根据容器大小自动排列 容器被划分为行和列的网格 添加组件的顺序为自左向右 可指定水平间隔和垂直间隔

118.s=s.delete(5,12);如果s=\"abcdefghigklmn\则执行删除语句后,s的值为( B)。 abcdefn abcdemn abcde mn abcdelmn

119.下列哪一项不是AWT普通组件( C)。 复选框 列表框 对话框 滚动条

120.关于列表框,下列哪一项是不正确的(D )。 可以有多行,每行文本代表一个选项 可多选也可单选 一般情况下不能编辑 行数一般限制为255行

121.菜单相关类不包括( D)。 MenuBar MenuItem CheckboxMenuItem

ListMenuItem

122.关于事件处理,下列哪一项是不正确的(B )。 JDK1.0及以前提供层次事件模型

层次事件模型又被称为事件派遣机制或授权事件机制 JDK1.1及以后提供监听事件模型 监听事件模型效率远高于层次事件模型

123.关于事件相关的ActionEvent类,下列哪一项是不正确的( C)。** 表示一个广义的行为事件 可代表鼠标点击和文本框回车行为 监听对不同的事件提供不同的抽象方法

监听器只有一个抽象方法,用来放置事件处理代码

124.对于键盘事件类KeyEvent,下列哪一项是不正确的(C )。 监听器为KeyListener

监听器有三个抽象方法,处理不同的键盘事件 主要有键按下,键抬起,击键(按下+抬起)三类事件 对一次击键,监听器只能选择处理一种事件

125.Border Layout布局方式的默认位置( B)。 NORTH CENTER SOUTH EAST

126.final类中的属性和方法都必须被final修饰符修饰。×

127.若有byte b=6;char c='c';则表达式b+c的值的类型是(C )。 int byte char

float

128.StringBuffer reverse()是将字符串倒序 √

129.StringBuffer deleteCharAt(int index)表示删除索引index-1处的字符 ×

130.Date date=new Date()表示提取系统时间并把值赋给Date型变量date √

131.indexOf(String s,int begin_index)是从字符串s中第begin_index+1字符处开始检索 ×

132.设s1=\"she\",那么s1.compareTo(\"her\")大于0 √

133.charAt(int index)表示从字符串中取得一个字符,该字符的位置是index √

134.StringBuffer型字符串是在字符串的拷贝上进行操作 ×

135.构造方法String(char[],int,int)中,第二和第三个参数分别用来生成字符串的字符型数组的起始位置和长度 √

136.char num[]={'C','h','i','n','e','s','e'}中,最后一个字符的索引是7 ×

137.Java中,不同的包中可以有同名的类。√

138.定义类时,若没有定义构造方法,则Java编译器自动提供一个默认构造方法。√

139.Java中,用户不能直接调用构造方法,必须在创建对象时用new运算符调用。√

140.main方法后的参数String[] args可使用任何常用数据类型 √**

141.Java中,如果一个类定义了抽象方法,该类也必须被定义为抽象类。√

142.一个子类可以继承父类中所有的成员变量和成员方法。√

143.在Java语言中,抽象类也可以实例化。√

144.在Java语言中,用final修饰的类,也可以被继承。×

145.在Java语言中,定义类时,类的名字必须以大写字母开始。×

146.类中定义的非静态变量,只能通过类的对象引用。×

147.Java中,构造方法也可以有返回值。×

148.Java中,用final修饰的方法不能被重写。√

149.Java中,构造方法的名称必须与类名相同。√

150.方法重载是java实现多态性的一种方式。√

151.Java中,仅返回值的类型不同也可以区分重载的方法。×

152.Java中的每个类都有构造方法,它的作用是在创建类的对象时初始化对象的状态。√

153.Java程序中,如果有package语句,该语句只能有一个,并且是第一条非注释语句。√

154.接口和类一样也可以有继承关系,而且都只能支持单继承。√

155.使用String s1=new String(\"Java\");String s2=new String(\"Java\")创建两个字符串时,s1,s2使用不同的内存空间 √

156.Java中,通过定义类变量,可以让多个对象共享一块内存空间。×

157.编写一个Java程序在屏幕上输出“Hello, world!”。

public class test {

public static void main(String[] args) {

System.out.println(\"Hello,world\"); } }

158.编程,找出长度为10的数组中,数组元素的最小值,并输出。 public class a {

public static void main(String[] args) {

double x[]={25.3,56.3,15.3,125.25,465.36,456.32,458.21,456.325,4856.3215,41.6}; double m=x[0]; int i;

for(i=0;i<10;i++) { if (m>=x[i]) m=x[i]; }

System.out.println(\"最小数是\"+m); }}

159.编程,找出长度为10的数组中,数组元素的最大值,并输出。 public class a {

public static void main(String[] args) {

double x[]={25.3,56.3,15.3,125.25,465.36,456.32,458.21,456.325,4856.3215,41.6}; double m= x[0]; int i;

for(i=0;i<10;i++) { if (m<=x[i]) m=x[i]; }

System.out.println(\"最大数是\"+m); }}

160.编写程序在终端打印1~100之间的素数。 public class a

{ public static void main(String[] args) { int i,j; label:

for(i=2;i<=100;i++) { for(j=2;j if(i%j==0) continue label;

System.out.print(+i); System.out.println(); } } }

161.编写程序,输出下列图案: ******* ***** *** * public class a

{ public static void main(String[] args) { int i,j,k;

for(i=1;i<=4;i++) {

for(j=1;j<=2*i-2;j++) System.out.print(\" \"); for(k=1;k<=9-2*i;k++) System.out.print(\"*\"); System.out.println(); } } }

162.编写程序,输出下列图案: * *** ***** ******* public class a

{ public static void main(String[] args) { int i,k;

for(i=1;i<=4;i++) {

for(k=1;k<=2*i-1;k++) System.out.print(\"*\"); System.out.println(); } } }

163.编写程序,计算偶数2.4.6...的累加和,条件是和小于50。

public class a {

public static void main(String[] args) {

int i=1,s=0; label: while(true) { s=s+2*i; i++; if(s>50) { s=s-2*i+2*1; break;}}

System.out.println(\"从2开始的偶数累加和小于50的累加和是\"+s); }}

164.编写程序,计算1~100中偶数的累加和并输出。 public class a {

public static void main(String[] args) {

int i,s=0;

for(i=1;i<=100;i++) { if(i%2==0)

s=s+i; }

System.out.println(\"1到100的偶数累加和是\"+s); }}

165.编写程序,计算下列分段函数的值。 x-1 (x>1) y= 0 (-1≤x≤1) x+10 (x<-1) import java.io.*; public class testa {

{

public static void main(String[] args) throws IOException

float x,y;

y=0;

InputStreamReader reader=new InputStreamReader(System.in); BufferedReader input=new BufferedReader(reader);

System.out.println(\"请输入x:\");

String temp=input.readLine(); x = Float.parseFloat(temp);

if(x>1) {

y=x-1; }

if(1.0>=x&&x>=-1.0)

{

y=0; } if(x<-1)

{

y=x+10; } }

System.out.println(\"y=\"+y);

}

第三道编程题库:

编写程序,实现1到100之间整数的累加并输出运算结果。 public class a {

public static void main(String[] args) {

int i,s=0;

for(i=1;i<=100;i++) { s=s+i; }

System.out.println(\"1到100的累加和是\"+s); }}

166.编写程序,计算下列分段函数的值。 x (x>0) y= 0 (x=0) -x (x<0) import java.io.*; public class testa {

{

public static void main(String[] args) throws IOException

float x,y;

y=0;

InputStreamReader reader=new InputStreamReader(System.in); BufferedReader input=new BufferedReader(reader);

System.out.println(\"请输入x:\");

String temp=input.readLine(); x = Float.parseFloat(temp);

if(x>0) {

y=x; } if(x==0)

{

y=0; } if(x<0)

{

y=-x; } }

System.out.println(\"y=\"+y);

}

167.比较两个数的大小,找出其中的最小数并输出。 import java.io.*; public class ka {

public static void main(String[] args) throws IOException

{

float x,y,m;

m=0;

InputStreamReader readerx=new InputStreamReader(System.in); BufferedReader inputx=new BufferedReader(readerx);

System.out.println(\"请输入x:\");

String tempx=inputx.readLine(); x = Float.parseFloat(tempx);

InputStreamReader readery=new InputStreamReader(System.in); BufferedReader inputy=new BufferedReader(readery);

System.out.println(\"请输入y:\");

String tempy=inputy.readLine(); y= Float.parseFloat(tempy);

}else { m=y; }

if(xm=x;

System.out.println(\"最小数为\"+m);

}

}

168.根据年龄,判断某人是否为成年。 import java.io.*; public class testa {

{

public static void main(String[] args) throws IOException

int x;

InputStreamReader reader=new InputStreamReader(System.in); BufferedReader input=new BufferedReader(reader);

System.out.println(\"请输入x:\");

String temp=input.readLine(); x = Float.parseFloat(temp);

if(x>=18) {

System.out.println(\"成年人\"); } if(x<18)

{

System.out.println(\"未成年\"); } }

}

169.编写程序,计算下列分段函数的值。 x (x>=0) y=

-x (x<0) import java.io.*; public class testa {

public static void main(String[] args) throws IOException

{

float x,y;

InputStreamReader reader=new InputStreamReader(System.in); BufferedReader input=new BufferedReader(reader);

System.out.println(\"请输入x:\");

String temp=input.readLine(); x = Float.parseFloat(temp); }

if(x>=0) { }else { y=-x; }

System.out.println(\"y=\"+y); }

y=x;

170.先定义一个类A(该类有成员变量x,成员方法f1( )对x赋初值),再定义类A的子类B(要求B新增成员变量y,新增成员方法f2( )对y赋初值)。

class A{

private int x; public A(int x, ){ this.x = x; } public int f1x() { return x; } } class B extendsA{ private int y; public B(int z){ this.y = y; } public int f2y() { return y; } }

第二道编程题库:

171.StringTokenizer用于把字符数组分解成可独立使用的单词 √

172.BorderLayout布局方式主要参考了中国围棋的布局 ×

173.AWT组件主要分为4大类 × 3种

174.AWT容器类主要有5种 ×3

175.AWT组件类主要有7类 ×

176.每种容器类必须要有一种布局方式 √

177.微软公司是视窗操作系统是计算机历史上第一个图形用户界面 ×

178.定义一个表示水果的类Fruit,要求如下:

(1)类的成员变量: fName表示水果名称,fColor表示水果颜色。 (2)类的成员方法:getName( ):获得水果名称。 class Fruit{

private String fName; private String fColor;

public Fruit(String fName, String Fcolor ){ this.sName = sName; this.fColor = fColor; } public String getfName() { return fName; } }

179.AWT布局主要目标是提供与平台无关的组件展示方式 √*

180.编写一个Java程序在屏幕上输出“This is java!”。

public class test {

public static void main(String[] args) {

System.out.println(\"This is java!\");

} }

181.CardLayout布局方式主要参考了扑克牌的布局方式 √

182.按钮不是图形界面上唯一能对点击做出响应的组件 √

183.Java的流主要用来处理各种输入和输出 ×

184.流有字节流.字符流.二进制流之分 ×

185.文件可以进行随机定位和存取操作√

1 Java语言的源程序不是编译型的,而是编译解释型的。√

2 Java程序中不区分大小写字母。×

3 执行java程序时,机器不能直接识别字节码文件,它要经过JVM中的解释器边解释边执行。×

4 在运行字节码文件时,使用java命令,一定要给出字节码文件的扩展名.class。×

5 使用javac命令编译java的源程序时,不需要给出来文件的扩展名java。×

6 方法重载要求方法名称必须相同。 √

7 一个方法在所属的类中只能被重载一次。 ×

8 一个方法在所属的类中可以被重载多次。√

9 源文件中public类的数目不限。√

10 Unicode是用16位来表示一个字符的。 √

11 java中用8位来表示一个字符的。×

12 在for循环中,不能使用break语句跳出循环。×

13 for循环是先执行循环体语句,后进行条件判断。×

14 for循环体语句中,可以包含多条语句,但要用大括号括起来 。√

15 在运算过程中,double类型可以自动转换为int 。×

16 char类型和int类型相加结果一定是字符型。 ×

17 char+byte的运算结果是int型的数据。√

18 char + int + double 的运算结果是double型的数据。 √**

19 一个类的方法使用该类的另一个方法时可以直接引用方法名。√**

20 java中,数组必须先声明,然后才能使用。√

21 子类一定比父类有更多的成员。×

22 在类的定义中,构造方法的作用是初始化成员变量。√

23 常量不能作为循环的条件。×

24 for循环和while循环在任何时候都不能替换。×

25 if语句和 else语句必须成对出现。×

26 if语句可以没有else语句对应√

27 switch结构中每个case语句中必须用break语句 。×

28 while循环和 do…while循环在任何时候都一样。×

29 do…while循环是先循环后判断所以循环体至少被执行一次。√

30 任何循环的循环体不可以为空。×

31 任何方法中都必须有return语句。×

32 一个方法中可以含有多个return语句。√

33 不需要定义类,就能够创建对象。×

34 当创建类的对象时,系统自动调用该类的构造方法。√

35 构造函数的返回类型只能是void型。√

36 算术运算符的优先级高于赋值符号的优先级。√

37 关系运算符的优先级低于算法运算符的优先级。√

38 一个数组中的元素的数据类型一样。√

39 数组中的元素在内存中连续存放。√

40 else语句可以没有if和它对应。×

41 while循环是先循环后判断,所以循环体至少被执行一次。×

42 如果for循环的循环体只有一条语句,则循环体的大括号可以省略。√

43 数组元素的下标从1开始。×

编程题

第一道编程题库:

186.Java程序中,一个类可以实现多个接口。√

187.图形用户界面的出现,主要是为了科研人员方便编制程序 ×

188.下列关于JAVA语言简单数据类型的说法中,哪个是正确的(A )。 一0开头的整数代表8进制常量

以0x或者0X开头的整数代表8进制整型常量

boolean类型的数据作为类成员变量的时候,系统默认值初始为true double类型的数据占计算机存储的32位

189.Java语言适合用来开发系统程序,像很多的操作系统及驱动程序都是用Java来编写的。×

190.Java2技术分为J2EE.J2SE和J2ME,其中J2SE是Java的企业版,用来针对企业级进行应用服务的开发。×

191.利用Java语言可以开发客户端Java小程序和应用程序,以及独立的服务器应用程序等。√

192.CPU指的是运算器和CRT F×

193.

执行如下程序代码a=0;c=0; do{ c--; a=a-1; }while(a>0); 后C的值是( C )。 0 1 -1 死循环

194.执行如下程序代码a=0;c=0; do{ --c; a=a-1; }while(a>0); 后C的值是( C )。 0 1 -1 死循环

195.定义一个类名为MyClass的类,并且该类可被所有类访问,那么该类的正确声明应为( C )。

private class MyClass extends Object class MyClass extends Object public class MyClass

protected class MyClass extends Object

196.在Java语言中,假设类Worker是类Person的子类,Worker的构造方法中有一句\"super( );\",该语句(C )。 调用类Worker中定义的super()方法 调用类Person中定义的super()方法 调用类Person的构造方法 语法错误

197.下面哪个是main()方法的合法参数( D )。 char args[] char args[][] String arg[] String args

198.如下哪个不是Java中正确的整数表示( D )。 11 0x22 033 44H

199.下面哪个方法是 public void example(){...} 的重载方法?( D ) private void example( int m){...} public int example(){...} public void example2(){...}

public int example(int m, float f){...}

200.下列哪一项不属于变量的组成部分( D )。 变量名 变量类型 变量初值 变量大小

201.下列描述中正确的一项是( A )。 标识符首字符的后面可以跟数字 标识符不区分大小写

复合数据类型变量包括布尔型.字符型.浮点型 数组属于基本数据类型

202.Java支持类的单继承。√

203.定义整型变量:int n=456;表达式的值为5的是( C )。 n%10 n/10

(n-n/100*100)/10 n%10/10

204.若有float f=2.6f;short s=20;则表达式f+s的值的类型是( A )。 float short int byte

205.若有int x,y,z;则表达式(x+y+z)是( B )。 算术表达式 逻辑表达式 关系表达式 以上都不对

206.若有byte a=1,b=2,c;则下列赋值语句正确的是( )。 c=a+b; c=a+2 c=b-2; c=64+1;

207.若有int i, j=30 , k=10;i=j==k*3?1:0;则i的值为( A )。 1 30 0 90

208.设x为int型变量,则执行语句段x=10; x+=x-=x-x; 后,x的值为( B )。 30 20 40 10

209.下列哪一个不属于JAVA语言的数据类型( A )。 指针类型 类 数组 浮点类型

210.下列标识符中,( D )是正确的变量名? int one-hundred 1thing thing1

211.在编写JAVA程序时候,如果不为类的成员变量定义初始值,JAVA会给他默认值,下类说法错误的是( C )。

byte是0 int是0 long 是0.0l float是0.0f

212.若a是int型变量,计算表达式 a=25/3%3 后,a为(B )。 1 2 3 4

213.若有以下定义 int k=7,x=12 ,则能使值为3的表达式( B )。 x%=(k%=5) (x%=k)-(k%5) x%=k-k%5 x%=(k-k%5)

214.表达式 5&2 之值应为( A )。 0 2 5 7

215.main方法需要一个参数,它是(D ) 。 一个整型量 一个String对象 一个实型量 一个任意类的对象

216.下列选项中,哪一项不属于JAVA语言的简单数据类型( B )。 整数型 数组 字符型

浮点型

217.Java是区分大小写的语言,关键字的大小写不能搞错,如果把类class写成Class或者CLASS,都是错误的。√

218.执行下列语句后i 和n的值为( B )。int i=10;int n=i++%5; 10,0 11,0 10,1 11,1

219.同C语言一样,在Java语言中,自定义方法必须放在主调方法之前定义,否则要在主调方法中在调用该自定义方法之前先声明。×

220.安装JDK时,需要配置环境变量path.classpath和JAVA_HOME。√

221.如果定义一个类时没有用到extends关键字,该类无直接父类。×

222.break语句是Java语言中的跳转语句。√

223.continue语句是Java语言中的跳转语句。√

224.continue语句只能用于循环结构。√

225.Java语言不含有指针与析构方法所以Java程序只有在结束运行时才能释放所占用的内存。×

226.在Java的方法中定义一个常量要用const关键字。×

227.Java语言中每个ASCII码字符和每个中文汉字字符也是占16个二进制位。√

228.在Java语言中,发生方法调用时,主调方法把实参的值传递给被调方法的形参,从而实现主调方法传递数据给被调方法。√

229.Java语言中,用户的自定义方法的返回值类型要与return语句中的类型相匹配。√

230.被调用方法的返回值只能通过return语句返回给主调方法。√

231.Java程序中,一个源文件中只能有一个公共类,且源文件的主文件名必须与该类同名。×

232.Java程序中,一个源文件中可以定义多个非public类型的类。√

233.Java程序是由什么组成的( B )。** 类 对象 函数 包

234.Java允许创建不规则数组,即Java多维数组中各行的列数可以不同。√

235.已知语句“short t=640;”是正确的,语句“short t=640000;”也是正确的 ×

236.类和对象的关系是抽象和具体的关系。√

237.Java源程序编写好之后,以文件的形式保存在硬盘或U盘上,源文件的名字可以随便取的,它不一定与程序的主类名一致。×

238.Java程序可以分为Java Application和Java Applet两类,这两类程序的运行方式是相同的。 ×

239.在switch选择结构中,break语句是用于退出switch语句的,若无break语句则程序将除了执行符合条件语句之外,而且还依次执行其后的所有语句。√

240.switch语句中的表达式的值除了是整型或字符型还可以是布尔型。×

241.int[] a={1,2,3}; System.out.println(a.length()); 以上语句运行的结果是显示3. √

242.在Java语言中,语句“boolean t=1;” 定义了boolean的类型变量t,并给它赋值为true √

243.J2SE标准版为桌面开发和低端商务应用提供了可行的解决方案。√

244.语句“b=2a+2;”是正确的表达√

245.Java语言的引用数据类型包括数组.类和接口√

246.为避免混淆,构造函数名字可以不与所属类名同名。×

247.任何类必须显式定义该类的构造函数,以便对类成员初始化。×

248.抽象方法不能含有方法体并且必须在抽象类中。×

249.在同一个类中不允许存在具有相同方法名和相同参数列表的方法即使方法返回类型不同。√

250.在switch语句中,最后的default语句是必须的,其作用是当表达式的值与任何一个case语句中的值都不匹配时执行default。×

251.每种容器类必须要有一种布局方式 √

252.设x=1 , y=2 , z=3

则执行语句 y+=z--/++x;后y的值是( B )。

253.2f 023

254.8

255.语句\"Hello\".equals(\"hello\")的正确执行结果是( c )。 true false 0 1

256.继承是面向对象的重要特征,它可以( b )。 优化程序的存储空间

使代码重用,降低程序复杂程度 保证类和接口的安全 更容易地实例化类得对象

257.下列不是java的位运算符的是( d )。 ~ ^ | !

258.文件可以进行随机定位和存取操作√ 1 Java语言的源程序不是编译型的,而是编译解释型的。√

2 Java程序中不区分大小写字母。×

3 执行java程序时,机器不能直接识别字节码文件,它要经过JVM中的解释器边解释边执行。×

4 在运行字节码文件时,使用java命令,一定要给出字节码文件的扩展名.class。×

5 使用javac命令编译java的源程序时,不需要给出来文件的扩展名java。×

6 方法重载要求方法名称必须相同。 √

7 一个方法在所属的类中只能被重载一次。 ×

8 一个方法在所属的类中可以被重载多次。√

9 源文件中public类的数目不限。√

10 Unicode是用16位来表示一个字符的。 √

11 java中用8位来表示一个字符的。×

12 在for循环中,不能使用break语句跳出循环。×

13 for循环是先执行循环体语句,后进行条件判断。×

14 for循环体语句中,可以包含多条语句,但要用大括号括起来 。√

15 在运算过程中,double类型可以自动转换为int 。×

16 char类型和int类型相加结果一定是字符型。 ×

17 char+byte的运算结果是int型的数据。√

18 char + int + double 的运算结果是double型的数据。 √**

19 一个类的方法使用该类的另一个方法时可以直接引用方法名。√**

20 java中,数组必须先声明,然后才能使用。√

21 子类一定比父类有更多的成员。×

22 在类的定义中,构造方法的作用是初始化成员变量。√

23 常量不能作为循环的条件。×

24 for循环和while循环在任何时候都不能替换。×

25 if语句和 else语句必须成对出现。×

26 if语句可以没有else语句对应√

27 switch结构中每个case语句中必须用break语句 。×

28 while循环和 do…while循环在任何时候都一样。×

29 do…while循环是先循环后判断所以循环体至少被执行一次。√

30 任何循环的循环体不可以为空。×

31 任何方法中都必须有return语句。×

32 一个方法中可以含有多个return语句。√

33 不需要定义类,就能够创建对象。×

34 当创建类的对象时,系统自动调用该类的构造方法。√

35 构造函数的返回类型只能是void型。√

36 算术运算符的优先级高于赋值符号的优先级。√

37 关系运算符的优先级低于算法运算符的优先级。√

38 一个数组中的元素的数据类型一样。√

39 数组中的元素在内存中连续存放。√

40 else语句可以没有if和它对应。×

41 while循环是先循环后判断,所以循环体至少被执行一次。×

42 如果for循环的循环体只有一条语句,则循环体的大括号可以省略。√

43 数组元素的下标从1开始。× 选择题:

259.流一般无法进行随机定位访问 ×**

260.标准输入和输出流无法关闭 √

261.Java的流主要用来处理各种输入和输出 ×

262.SWING不是线程安全的 √

263.Java图形界面的菜单,设计思想来源于现实生活中的菜单 ×

264.按钮不是图形界面上唯一能对点击做出响应的组件 √

265.下列选项中属于字符串常量的是(a )。 'abc' \"abc\" (abc) {abc}

266.设StringBuffer s=new StringBuffer(\"Sunday\"),那么s.capacity()的值为6 ×

267.

substring(int begin,int end)表示取得一串子字符串,位置从begin到end ×

268.equals()和equalsIgnoreCase()的作用完全一样 ×

269.indexOf()方法是从字符串的第一个字符开始检索 √

270.s.replace(a,e)表示把字符串s中的e提出来,用a替换 ×

271.Date date=new Date()表示提取系统时间并把值赋给Date型变量date √

272.文本框始终可以编辑 ×

273.当使用setLength(int length)时,如果length的长度小于原字符串的长度,那么进行setLength操作后当前字符串的长度为length,且后面的字符被删除 √

274.图形用户界面的出现,主要是为了科研人员方便编制程序 ×

275.StringBuffer reverse()是将字符串倒序 √

276.StringTokenizer用于把字符数组分解成可独立使用的单词 √

277.使用String s1=new String(\"Java\");String s2=new String(\"Java\")创建两个字符串时,s1,s2使用不同的内存空间 √

278.String nextToken()用来逐个获取字符串中的单词并返回该字符串 √

第11.14章:

279.AWT组件主要分为4大类 × 3种

280.下列选项中,与成员变量共同构成一个类得是( a )。 关键字 方法 运算符 表达式

281.StringBuffer deleteCharAt(int index)表示删除索引index-1处的字符 ×

282.在Java中,下面对于构造方法的描述正确的是(D )。 类必须显式定义构造方法 构造方法的返回类型是void

构造方法和类有相同的名称,并且不能带任何参数 一个类可以定义多个构造方法

283.下列不是类的属性修饰符的是( D )。 public abstract private final

284.Java源文件和编译后的文件扩展名分别为(B )。 .class和 .java .java和 .class .class和 .class .java和 .java

285.设有a=2,b=3,则a&&b的结果是( A )。 true false 2 3

286.0

287.0 2

288.执行下列语句后,j的值为(A )。int i=1;j=++i; 2 1 0 3

289.下面代码的执行结果是( D )。int i=2,j=2;System.out.println(i++-j--); 3 2 1

0

290.下面代码的执行结果是(B )。int i=2;System.out.println(i++); 3 2 1 0

291.JAVA所定义的版本中不包括:( D ) J2EE J2SE J2ME J2HE

292.下列语句哪一个正确( B )。 Java程序经编译后会产生machine code Java程序经编译后会产生byte code Java程序经编译后会产生DLL 以上都不正确

293.Java是从( B )语言改进重新设计。 Ada C++ Pasacal BASIC

294.若数组a定义为int[][]a=new int[3][4],则a是(B )。 一维数组 二维数组 三维数组 四维数组

295.如果要让一个变量的值不被修改,可以将这个变量用关键字( C )修饰。

static super final finally

296.若定义int a=2,b=2,下列表达式中值不为4的是( a )。 a+(++b); a*(b++); a+b; a*b;

297.下面对于方法的描述,正确的有( c )。 方法必须返回一个值 方法可以返回多个值 在方法内可以定义其他方法 方法可以有多个参数

298.下列不属于逻辑运算符的是( d )。 ! || && |

299.下列不属于关系运算符的是(c )。 > < >> !=

300.在单一文件中import.class和package的正确出现顺序是( a )。 package, import, class class, import, package import, package, class package, class, import

301.内部数据类型byte的取值范围是( B ) 0——65 -128——127 –32768——32767 256—— 255

302.以下( c )不是Java的原始数据类型。 short boolean unit float

303.在类的说明符中,被指定为私有的数据可以被以下( C )访问。 程序中的任何方法 其他类的成员方法 本类中的成员方法 子类中的成员方法

304.在Java语言中,下面变量命名合法的有( a )。 variable123 123varable Private(private) -variable_123

305.子类与父类的方法定义完全相同,但是方法的实现却不同,这是采用了方法的( D )。 重载 实现 覆盖 继承

306.指出正确的表达式( b )。 byte b=128; Boolean x=null; Long m= oxfffL; Double d=0.9239d

307.在java中,有下面代码,其中可以正确编译的是( a )。 double d = (int)2; int I = 1.34; int I = (double)1; 以上都对

308.在java中,变量名正确的是(c )。 $(student) 1_people _ok \"name\"

309.在Java中,关于类与对象的说法,正确的是( d )。 代码:string s = new string(); 中的string 是类,s是对象 对像包括类,类是对象有具体表现

对象拥有自己的行为和属性,和对应的类没有关系 学生,可以看作是张三类或者李四类的对象

310.在Java中,下列说法正确的是( c )。 编写的源程序保存在扩展名为class的文件中 源程序编译后保存在扩展名为java的文件中 编写的源程序必须先编译后才能运行 程序员可以读懂扩展名为class的文件

311.字符串\"java programming\"的长度是16×

312.在java中,下列( c)语句不能通过编译。 String s=\"john\"+\"was\"+\"here\"; String s=\"john\"+3; float f=5+5.5; int a=3+5;

313.在switch语句中,case后面的子句和if后面的子句相似,可以是一条语句,也可以是多条语句。√

314.break语句是Java语言中的跳转语句。√

315.如果一个类不是内部类,则它的访问属性不能是private和protected. √

316.abstract不能和final并列修饰同一个类。√

317.int[] a={1,2,3}; System.out.println(a.length()); 以上语句运行的结果是显示3. √

318.Java语言中每个ASCII码字符和每个中文汉字字符也是占16个二进制位。√

319.在同一个类中不允许存在具有相同方法名和相同参数列表的方法即使方法返回类型不同。√

320.Java语言是区分大小写的。√

321.任何类必须显式定义该类的构造函数,以便对类成员初始化。×

322.为避免混淆,构造函数名字可以不与所属类名同名。×

323.Java语言通过垃圾回收机制简化了程序的内存管理√

324.Java语言没有变量指针的用法,所以Java程序只有在运行结束后才能释放所占用的内存×

325.已知语句“short t=640;”是正确的,语句“short t=640000;”也是正确的 ×

326.在Java语言中,执行语句“boolean t=1&&8;”的结果将使得变量t的值为true √

327.charAt(int index)表示从字符串中取得一个字符,该字符的位置是index √

328.J2ME小型版是致力于消费产品和嵌入式设备的最佳解决方案。√

329.程序在运行时发现的错误一般是程序语法上的错误。√*

330.第一代计算机时期没有操作系统。√

331.计算机中数值数据一般采用补码形式存储。√

332.Java语言适合用来开发系统程序,像很多的操作系统及驱动程序都是用Java来编写的。×

333.与Java应用程序(Application)不同,Java Applet程序的运行,需要得到客户端

浏览器的支持。√

334.在Java语言中,语句“boolean t=1;” 定义了boolean的类型变量t,并给它赋值为true √

335.J2EE企业版是以企业为环境而开发应用程序的解决方案。√

336.Java语言中,每个ASCII码英文占用8个bit,而中文占用两个字节(即16个bit)。×

337.Java源程序编写好之后,以文件的形式保存在硬盘或U盘上,源文件的名字可以随便取的,它不一定与程序的主类名一致。×

338.在JDK命令行开发工具中,用编译程序javac.exe编译生成的文件是二进制可执行文件。 √

339.Javac是Java编译器,用来将Java源程序编译成Java字节码的程序。字节码文件名和源文件名相同,扩展名是.class。√

340.appletviewer 是Java小程序浏览器,可以执行HTML文件中的 Java小程序. Applet 是个模拟浏览器,可以显示Applet的运行结果。√

341.在switch选择结构中,break语句是用于退出switch语句的,若无break语句则程序将除了执行符合条件语句之外,而且还依次执行其后的所有语句。√

342.带标号的break语句可以用来跳出多重循环结构。√

343.安装JDK时,需要配置环境变量path.classpath和JAVA_HOME。√

344.Java中,构造方法的名称必须与类名相同。√

345.return语句不是Java语言中的跳转语句。×

346.Java中,方法重载机制,允许在一个类中定义多个同名的方法。√

347.方法重载是java实现多态性的一种方式。√

348.Java中,仅返回值的类型不同也可以区分重载的方法。×

349.Java中定义的静态方法,不能访问该类的非静态成员变量。√

350.Java中,用final修饰的方法不能被重写。√

351.Java程序中,一个源文件中只能有多个非public接口定义。√

352.类中定义的静态变量,只能通过类名引用。√

353.Java中,不同的包中可以有同名的类。√

354.char num[]={'a','b','c','d'}中,num[2]的值为c √

355.char num[]={'C','h','i','n','e','s','e'}中,最后一个字符的索引是7 ×

356.StringBuffer型字符串是在字符串的拷贝上进行操作 ×

357.String类型字符串是在原字符串上进行操作,所以任何改变都将导致原字符串的改变

358.5 3 4 5

359.Java程序中,一个源文件中只能有一个公共接口定义。×

360.Java语言规定,用户的自定义方法可以不需要形式参数,此时方法名后不需要写形参,括号也不需要。×

361.对于String类型字符串来说,字符串的连接只有“+”一种×

362.Java允许创建不规则数组,即Java多维数组中各行的列数可以不同。√

363.Java语言中的数组元素只能是基本数据类型而不能为对象类型。×

364.在Java的方法中定义一个常量要用const关键字。×

365.同C语言一样,在Java语言中,自定义方法必须放在主调方法之前定义,否则要在主调方法中在调用该自定义方法之前先声明。×

366.Java中,如果一个类定义了抽象方法,该类也必须被定义为抽象类。√

367.在Java语言中,发生方法调用时,主调方法把实参的值传递给被调方法的形参,从而实现主调方法传递数据给被调方法。√

368.不使用标号的break语句只能跳出当前的switch或循环结构。√

369.用户自定义方法中局部变量的确定值要在该方法被调用时由形式参数传入确定。√

370.Java程序中,一个源文件中只能有一个公共类,且源文件的主文件名必须与该类同名。×

371.Java程序中,一个类可以实现多个接口。√

372.类和对象的关系是抽象和具体的关系。√

373.某个类的某一个具体的对象称为该类的一个实例。√

374.Java支持类的单继承。√

375.Java规定,任何static方法不得调用非static方法。√

376.下列代表十六进制整数的是( )。 ***** -20E5 0X123 12240 0934

377.下面哪个是非法的( B )。

int I=32; float f=45.0; double d=45.0; char c ='a';

378.下面哪一个操作符的优先级最高? ( D ) **** && || ! ( )

379.下面哪些选项不可以用作变量名的首字符作变量名的首字符?( C)字母 下划线 数字 美圆符号

380.表达式(11+3*8)/4%3的值是( D )。 31 0 1 2

381.Java语言中字符型数据的长度是( B)位。 8 16 32 64

382.6f

383.下列关键字中可以表示常量的是(A )。

final default private transient

384.下列代表八进制整数的是(D )。 **** 0X56 -1E3 1840 0144

385.当方法遇到异常又不知如何处理时,下列哪种说法是正确的(B )。捕获异常 抛出异常 声明异常 嵌套异常

386.Java中采用类名后跟一点(.)和方法名的形式调用( )方法。 ****构造方法 非静态方法 静态方法 静态和非静态方法

387.下列运算符中不能进行位运算的是( )。 ***** >> >>> << <<<

388.下列语句中执行跳转功能的语句是(C )。 for 语句

*****while语句 continue语句 switch语句

389.下列哪个是面向大型企业级用容器管理专用构件的应用平台(A )。 J2EE J2ME J2SE J2DE

390.下面的代码段中,执行之后i和j的值是什么( B )。 int i = 1; int j; j = i++; 1, 1 1, 2 2, 1 2, 2

391.Java变量中,以下不属于复合类型的数据类型是(B )。 *** 类 字符型 数组型 接口

392.Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点(B )。

安全性 **** 多线程 跨平台 可移植

393.Java编程所必须的默认引用包为(B )。 ***** java.sys包 java.lang包

java.new包 以上都不是

394.在Java中,属于浮点数类型变量的是(B )。 single double byte char

395.下列语句片段

int a=10,b=4,c=20,d=6;System.out.println(a++*b+c*--d);输出结果为( D)。 ***** 144 28 140 不能执行

396.下面哪些选项是正确的main方法说明?(B )。 public main(String args[])

public static void main(String args[]) private static void main(String args[]) void main()

397.下列语句片段 int a=10,b=4,c=20,d=6; System.out.println(a++*b+c*--d); 输出结果为(D )。

***** 144 28 140 不能执行

398.下列关于for循环和while循环的说法中哪个是正确的(A )。 while循环能实现的操作,for循环也都能实现

while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果

两种循环任何时候都可替换

两种循环结构中都必须有循环体,循环体不能为空

399.编译Java Application 源程序文件将产生相应的字节码文件这些字节码文件的扩展名为(B )。 *** .java .class .html .exe

400.JAVA程序经常用到“递归”,“递归”的基本思想是(C )。 “让别人反复调用自己” “自己反复调用别人” “自己反复调用自己” 以上说法都不对

401.下面哪个是合法的标识符( A)。 $persons 2Users *point this

402.十进制数16的16进制表示格式是(A )。 ****A0x10E B0x16 C0xA D16

403.以下程序段执行后的K值为( )。int x=20; y=30; k=(x>y)?y:x; A20 30 10

50

404.下列哪个选项是合法的标识符(B )。 123 _name class 1first

405.在Java中,\"456\"属于( b )类的对象。 int String Integer Numbe

406.Math类是标准的数学类,下面哪一个不是该类提供的数学运算的方法( D)。 绝对值abs() 指数运算exp() 对数运算log() 排序sort()

407.以下叙述中不正确的是( B): 在方法中,通过return语句传回方法值。

在一个方法中,可以执行有多条return语句,并返回多个值。 在Java中,主方法main()后的一对圆括号中也可以带有参数。 在Java中,调用方法可以在System.out.println()语句中完成。

408.若有定义如下 class dog { float x; static int y;…},则下列说法中正确的是( B )。

x称为类变量,y为实例变量 x,y均为类变量 x,y均为实例变量 x为实例变量,y为类变量

409.下列不是重载方法的特征的是( B)。 参数个数不同 名相同而类型不同 参数类型不同 名相同且类型相同

410.接口体中不应包含( C )。 常量定义 常量赋值 方法实现 方法声明

411.Java中,使用哪个关键字来定义一个接口( A )。 implements class extends interface

412.构造方法被调用是当( C )。 类定义时 使用对象的属性时 使用对象的方法时 对象被创建时

413.下面关键字中哪一个是不可用来控制对类成员的访问( A )。 public private protected default

414.有一段java 应用程序,它的主类名是a1,那么保存它的源文件名可以是( A )。 a1.java

a1.class a1 都对

415.Java 类可以作为( B )。*** 类型定义机制 数据封装机制

类型定义机制和数据封装机制 上述都不对

416.设有整型数组的定义int a[]=new int[8]; 则a.length的值为下列哪项(A )? 8 9 7 6

417.下列哪个语句是声明了一个含有10个string对象的数组( C)。 char str[]; char str[][];

string str[]=new string[10]; string str[10];

418.下列代码的执行结果是(A )。Public class Test{ Public int aMethod(){Static int i=0; i++;System.out.println(i);} Public static void main(String args[]){Test test=new Test(); Test.aMethod();}} 编译错误 0 1

运行成功,但不输出

419.给出下列代码,byte[] array1,array2[];byte[] array3[][];byte [][]array4;则数组初始化中哪项是不正确的(C )? ****

array2=array1 array2=array3 array2=array4 array3=array4

420.下列关于变量的叙述中哪个是错误的(B ) ** 实例变量是类的成员变量 实例变量用关键字static声明

在方法中定义的局部变量在该方法被执行时创建 局部变量在使用前必须被初始化

421.如下哪个不是 Java 中有效的关键字?( A ) const NULL false this

422.不能构成循环的语句是(C )。 for语句 while语句 switch语句 do—while语句

423.java程序设计所规定的三种基本控制结构是(C )输入.处理.输出 树形.网形.环形 顺序.选择.循环 主程序.子程序.函数

424.下列关于循环语句的描述中,错误的是( D )。任何一种循环体内都可以含一种循环语句 循环体可以使空语句也可以是空 循环体内可以出现多个break语句

。 循环语句,循环体至少被执行一次

425.下列语句,能完成整型变量a,b值交换是(B )。 int c=a; a=b; b=c; a=a+b; b=a-b; a=a-b; int c=b; b=a; a=c; a=b; b=a;

426.阅读下列代码段int x=3; while (x<9) x+=2;x++; while语句成功执行的次数是(B )。 1 2 3 4

427.for(;;)是( A )。 循环结构 分支结构 顺序结构 选择结构

428.设有定义语句int a[3],则下列对此语句的叙述中错误的是( C): 定义了一个名为a的一维数组 a数组有3个元素 a数组元素的下标为1~3 数组a中的每一个元素都是整型

429.下列代码段int i= 1, j= 10 ; do { if (i++> --j) continue; } while(i<5);执行完毕后,i和j的值分别是(A )。 i = 6 j= 5 i = 5 j= 5 i = 6 j= 4 i = 5 j= 6

430.按Java语言的规定,以下正确的说法是( B )。 实参不可以是常量,变量或表达式。 形参不可以是常量,变量或表达式。 实参与其对应的形参占用同一个存储单元。 形参是虚拟的,不占用存储单元。

431.下列语句执行后下列语句执行后下列语句执行后下列语句执行后i的值是的值是的值是的值是( C ) int i=2; do{i*=i;} while(i<16); 4 8 16 3

432.类Test1定义如下:public class Test1{public float aMethod(float a,float b){}____}

根据方法重载的定义,将以下哪种方法插入下划线部分是不合法的。(B ) public float aMethod(float a,float b,float c){} public float aMethod(float c,float d){} public float aMethod(int a,int b){} public float aMethod(int a,int b,int c){}

433.为AB类的一个无形参无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(A )。 static void method() public void method() final void method() abstract void method()

434.有以下方法的定义,ReturnType method(byte x,float y){return(short)x/y*2;}请选择该方法的返回类型( B)。** byte short

int float

435.定义一个表示20个值为null的字符串数组,下面选项正确的是(D )。 String[] a String a[] char a[20][]

String a[]=new String[20]

436.与Java应用程序(Application)不同,Java Applet程序的运行,需要得到( B)的支持。 操作系统 客户端浏览器 记事本(Notepad)软件 数据库服务器

437.while循环和 do…while循环的区别是( D)。 没有区别,这两个结构任何情况下效果一样 while循环比 do…while循环执行效率高

while循环是先循环后判断,所以循环体至少被执行一次 do…while循环是先循环后判断,所以循环体至少被执行一次

438.下面关于float数的定义错误的是( C )。 float f=-5; float f=0x0687; float f=1.0; float f=7.8f;

439.下面哪个是main()方法的合法参数( D )。 char args[] char args[][] String arg[] String args

440.如下哪个不是Java中正确的整数表示( D )。 11 0x22 033 44H

441.下面哪个方法是 public void example(){...} 的重载方法?( D ) private void example( int m){...} public int example(){...} public void example2(){...}

public int example(int m, float f){...}

442.下列哪一项不属于变量的组成部分( D )。 变量名 变量类型 变量初值 变量大小

443.在编写JAVA程序时候,如果不为类的成员变量定义初始值,JAVA会给他默认值,下类说法错误的是( C )。 byte是0 int是0 long 是0.0l float是0.0f

444.下列JAVA语句中,错误的一项是( D )。 int $e,a,b =10; char c,d ='a'; float e=0.0d; double e=0.0f;

445.下列关于JAVA语言简单数据类型的说法中,哪个是正确的(A )。 一0开头的整数代表8进制常量

以0x或者0X开头的整数代表8进制整型常量

boolean类型的数据作为类成员变量的时候,系统默认值初始为true double类型的数据占计算机存储的32位

446.main方法需要一个参数,它是(D ) 。 一个整型量 一个String对象 一个实型量 一个任意类的对象

447.若有定义int a[]=new int[2][3];则数组第1个下标的可用范围是 ( D )。 1到2 0到2 1 0到1

448.分析下面的代码行 float f=3.2; int I=f; ,错误的答案是( B )。 代码不能编译

代码编译,i被设置为3

第二行若改为 int i=(byte)f 则可编译 第一行若改为 float f=3.2f 则可编译

449.关于下面的代码行 int []arr={1,2,3}; for(int i=0;i<2;i++) arr[i]=0;哪一个表达式的值为true( A )。 arr[0]==0 arr[0]==01 arr[1]==1 arr[2]==0

450.下面语句 System.out.println(4|7)的输出是( D )。 4

5 6 7

451.______ methodA(byte x,double y){ return (short)x/y*2; }下划线上应填写的关键字是( B )。 byte double short float

452.Java程序的执行过程中用到一套JDK工具,其中java.exe是指(B )。 Java文档生成器 Java解释器 Java编译器 Java类分解器

453.若有int x,y,z;则表达式(x>y&&x>z)是( B )。 算术表达式 逻辑表达式 关系表达式 以上都不对

454.下列关于语句for(表达式1;表达式2;表达式3)的描述中,错误的是( D )。 表达式1仅在刚开始时被执行一次 表达式2是一个条件表达式

表达式3通常用作修改循环控制变量之用 表达式3在循环体之前被执行

455.下列关于语句for(表达式1;表达式2;表达式3)的描述中,错误的是( A )。 表达式1和表达式3中不能含有多条语句 表达式2为空时,默认规定为恒真

for语句中定义的循环控制变量只在该块内有效

表达式1.表达式2和表达式3都是可选的

456.有如下定义:int a=1;byte b=2;则表达式a+b的数据类型为( A )。 int byte char long

457.有如下定义:float a=3.14f;byte b=3;则表达式a+b的值的数据类型为(D byte int char float

458.若有int x=10;char c='d';则表达式a+c的值的类型是( A )。 char int float byte

459.若a是int型变量,计算表达式 a=25/3%3 后,a为(B )。 1 2 3 4

460.int a,b,c,d;表达式(a+b>c+d)的值的数据类型是(B )。 int boolean char 以上都不对

)。 461.若有定义 int x=3,y;则执行语句y=(x++)+(x++)+(x++)后,y=( B )。 9 12 15 18

462.若有int x,y,z;则表达式(x+3>y-1&&x>z)的类型是(B )。 算术表达式 逻辑表达式 关系表达式 以上都不对

463.若有byte a=1,b=2,c;则下列赋值语句正确的是( )。 c=a+b; c=a+2 c=b-2; c=64+1;

464.执行下列语句后i 和n的值为( B )。int i=10;int n=i++%5; 10,0 11,0 10,1 11,1

465.下列标识符中,( D )是正确的变量名? int one-hundred 1thing thing1

466.定义整型变量:int n=456;表达式的值为5的是( C )。 n%10 n/10

(n-n/100*100)/10 n%10/10

467.下面哪个语句不能定义一个字符变量( B )。 char c1='a'; char c2=\"S\"; char c4=97; char c3='\A';

468.若有char c='8';short s=20;则表达式c+s的值的类型是( A )。 char short int byte

469.计算机与一般计算装置的本质区别是它具有( D)。 大容量和高速度 自动控制功能 程序控制功能

存储程序和程序控制功能

470.已知表达式int m[]={0, 1, 2, 3, 4, 5, 6,7 }; 下面哪个表达式的值与数组最大下标数相等( B )。 m.length() m.length-1 m.length()+1 m.length+1

471.编写一个java程序,用穷举法找出2~50之间的素数,并打印出来。 public class test{

public static void main(String args[]){ int i,j,k ; boolean flag ;

for (i=2;i<=50 ;i++ ){ flag =true ; k=i/2 ;

for (j=2;j<=k ;j++ ){ if (i%j==0){ flag = false ; break ; } } if (flag){

System.out.println(i+\"\") ; } } } }

472.编写一自定义方法,找出两个数中的最大数,并main方法中验证。 public class test {

static double Max(double x,double y) { double t; if(x>=y) { t=x; }else { return t; }

public static void main(String[] args) {

double x,y,m;

x=549.265; y=56.28;

m =Max(x,y);

System.out.println(\"最大数是\"+m); System.out.println(\"x=\"+x+\"y=\"+y);

if(m>=x&&y<=m) { t=y; }

System.out.println(\"ture\");

} else {

} } }

System.out.println(\"flase\");

473.编写一自定义方法,找出两个数中的最小数,并main方法中验证。 public class test {

static double Min(double x,double y) { double t; if(x<=y) { t=x; }else { return t; }

public static void main(String[] args) {

double x,y,m;

x=245.38; y=525.63;

m =Min(x,y);

System.out.println(\"最小数是\"+m); System.out.println(\"x=\"+x+\"y=\"+y);

if(m<=x&&y>=m) {

System.out.println(\"ture\"); t=y; }

} else {

}

System.out.println(\"flase\");

} }

474.编程,找出长度为10的数组中,数组元素的最小值,并输出。 public class test {

public static void main(String[] args) {

double x[]={25.3,56.3,15.3,125.25,465.36,456.32,458.21,456.325,4856.3215,41.6}; double m=x[0]; int i;

for(i=0;i<10;i++) { if (m>=x[i]) m=x[i]; }

System.out.println(\"最小数是\"+m); }}

475.编写程序,计算1~100中奇数的累加和并输出。 public class test {

public static void main(String[] args) {

int i,s=0;

for(i=1;i<=100;i++) { if(i%2!=0) s=s+i; }

System.out.println(\"1到100的奇数累加和是\"+s);

}}

476.CPU指的是(C )。 运算器和CRT CRT和RAM ALU和控制器 ALU和ROM

477.编写程序,计算下列分段函数的值。 x (x>0) y= 0 (x=0) -x (x<0) import java.io.*; public class test {

{

public static void main(String[] args) throws IOException

float x,y;

y=0;

InputStreamReader reader=new InputStreamReader(System.in); BufferedReader input=new BufferedReader(reader);

System.out.println(\"请输入x:\");

String temp=input.readLine(); x = Float.parseFloat(temp);

if(x>0) {

y=x; } if(x==0)

{

y=0; } if(x<0)

{

y=-x; }

System.out.println(\"y=\"+y);

} }

478.在计算机中,数值数据一般采用( B)形式存储。 原码 补码 反码 真值

479.Java 2技术中,常用于嵌入式设备及消费类电器(如手机等)上的开发的是( C)。 J2EE J2SE J2ME JRE

480.适合用来开发系统程序,如编写操作系统及驱动程序的程序设计语言是( D)。 Java Fortran Pascal C

481.Java源程序是以文本格式存放的,文件扩展名必须为( A)。 .java .class .jar .txt

482.Java的平台无关性的实现主要依靠(B )。 JDK JVM JRE JAR

483.在计算机中,控制器是执行算术运算和逻辑运算的部件,它的任务是对信息进行加工处理。 ×

484.编程,找出长度为10\\的数组中,数组元素的最大值和最小值,并输出。 public class test {

public static void main(String[] args) {

double x[]={25.3,56.3,15.3,125.25,465.36,456.32,458.21,456.325,4856.3215,41.6}; double max=x[0]; int i;

for(i=0;i<10;i++) { if (max<=x[i]) max=x[i]; } double min=x[0]; int j;

for(j=0;i<10;i++) { if (min>=x[j]) min=x[j]; }

System.out.println(\"最大数是\"+max); System.out.println(\"最小数是\"+min); }}

选择题

第1.2章(10道)

485.先定义一个类A(该类有成员变量x和y),再定义类A的子类B(要求B新增成员变量z)。 class A{

private int x; private int y; public A(int x,int y ){ this.x = x; this.y = y; }

} class B extendsA{ private int z; public B(int z){ this.z=z;} }

486.编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(B )。 *** java class html exe

487.指出下列哪个方法与方法public void add(int a){ }为错误的重载方法( A )。 public int add(int a) public void add(long a) public int add(long a) public void add(float a)

488.执行如下程序代码a=0;c=0; do{ --c; a=a-1; }while(a>0); 后C的值是( C )。 0 1 -1 死循环

489.

执行如下程序代码a=0;c=0; do{ c--; a=a-1; }while(a>0); 后C的值是( C )。 0 1 -1 死循环

编程题: 第一道编程题库:

490.编写一个Java程序在屏幕上输出“Hello, world!”。

public class test {

public static void main(String[] args) {

System.out.println(\"Hello,world\"); } }

491.编写程序在终端打印1~100之间的素数。 public class test

{ public static void main(String[] args) { int i,j; label:

for(i=2;i<=100;i++) { for(j=2;j System.out.print(+i); System.out.println(); } } }

492.定义一个表示学生信息的类Student,要求如下: (1)类Student的成员变量:

sNO 表示学号;sName表示姓名;sSex表示性别;sAge表示年龄;sJava:表示Java课程成绩。

(2)类Student的方法成员:

getNo():获得学号; getName():获得姓名; class Student{ private String sNO; private String sName; private char sSex; private int sAge; private int sJava;

public Student(String sNo, String sName){ this.sNo = sNo; this.sName = sName; } public String getsNo() { return sNo; } public String getsName() { return sName; } }

493.下面哪条语句定义了5个元素的数组( A )。 int []a={22,23,24,25,12}; int a[]=new int(5); int [5] array; int [] arr;

494.编写程序,计算下列分段函数的值。 x (x>=0) y=

-x (x<0) import java.io.*; public class test {

public static void main(String[] args) throws IOException

{

float x,y;

InputStreamReader reader=new InputStreamReader(System.in); BufferedReader input=new BufferedReader(reader);

System.out.println(\"请输入x:\");

String temp=input.readLine(); x = Float.parseFloat(temp);

}

if(x>=0) { }else { y=-x; }

System.out.println(\"y=\"+y); }

y=x;

495.根据年龄,判断某人是否为成年。 import java.io.*; public class test {

{

public static void main(String[] args) throws IOException

int x;

InputStreamReader reader=new InputStreamReader(System.in); BufferedReader input=new BufferedReader(reader);

System.out.println(\"请输入x:\");

String temp=input.readLine(); x = Float.parseFloat(temp);

if(x>=18) {

System.out.println(\"成年人\"); } if(x<18)

{

System.out.println(\"未成年\"); } }

}

496.判断2020的奇偶性,并进行输出。

public class test {

public static void main(String[] args) { int x; x=2020; if(x%2==0)

System.out.println(+x+\"是偶数\"); else

System.out.println(+x+\"不是偶数\"); } }

497.比较两个数的大小,找出其中的最大数并输出。 import java.io.*; public class test {

public static void main(String[] args) throws IOException

{

float x,y,m;

m=0;

InputStreamReader readerx=new InputStreamReader(System.in); BufferedReader inputx=new BufferedReader(readerx);

System.out.println(\"请输入x:\");

String tempx=inputx.readLine(); x = Float.parseFloat(tempx);

InputStreamReader readery=new InputStreamReader(System.in); BufferedReader inputy=new BufferedReader(readery);

System.out.println(\"请输入y:\");

String tempy=inputy.readLine(); y= Float.parseFloat(tempy); }

}else { m=y; }

} if(x>y) {

m=x;

System.out.println(\"最大数为\"+m);

498.编写一个Java程序,判断某年份是否为闰年。 import java.io.*; public class test {

{

public static void main(String[] args) throws IOException

float x;

InputStreamReader reader=new InputStreamReader(System.in); BufferedReader input=new BufferedReader(reader);

System.out.println(\"请输入x:\");

String temp=input.readLine(); x =Float.parseFloat(temp);

if(x%400==0) {

System.out.println(+x+\"是闰年\"); } else if(x%4==0)

{

System.out.println(+x+\"是闰年\"); }

else{ System.out.println(+x+\"不是闰年\");} }

}

499.比较两个数的大小,找出其中的最大数和最小数,并输出最大数和最小数之差。 import java.io.*; public class test {

public static void main(String[] args) throws IOException

{

float x,y,m;

InputStreamReader readerx=new InputStreamReader(System.in); BufferedReader inputx=new BufferedReader(readerx);

System.out.println(\"请输入x:\");

String tempx=inputx.readLine();

x = Float.parseFloat(tempx);

InputStreamReader readery=new InputStreamReader(System.in); BufferedReader inputy=new BufferedReader(readery);

System.out.println(\"请输入y:\");

String tempy=inputy.readLine(); y= Float.parseFloat(tempy);

if(xSystem.out.println(\"最小数为\"+x); System.out.println(\"最大数为\"+y); m=y-x;

System.out.println(\"最大数与最小数之差为\"+m);

}else {

System.out.println(\"最小数为\"+y);

System.out.println(\"最大数为\"+x); m=x-y;

System.out.println(\"最大数与最小数之差为\"+m); }

}

}

500.编写一个Java程序在屏幕上输出“This is my program!”

public class test {

public static void main(String[] args) {

System.out.println(\"This is my program!\"); } }

因篇幅问题不能全部显示,请点此查看更多更全内容