文档库 最新最全的文档下载
当前位置:文档库 › java程序设计期末复习题

java程序设计期末复习题

java程序设计期末复习题
java程序设计期末复习题

Java程序设计期末复习题

一、选择题

1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( B )。

A. java

B. .class

C. html

D. .exe

2、设x = 1 , y = 2 , z = 3,则表达式y+=z--/++x 的值是( A )。

A. 3

B. 3. 5

C. 4

D. 5

3、不允许作为类及类成员的访问控制符的是( C )。

A. public

B. private

C. static

D. protected

4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A )。

A. static void method( )

B. public void method( )

C. final void method( )

D. abstract void method( )

5、下列程序段执行后的结果是( A )。

String s = new String("abcdefg");

for (int i=0; i

System.out.print(s.charAt(i));

}

A) aceg B) ACEG C) abcdefg D) abcd

6、应用程序的main方法中有以下语句,则输出的结果是( A )。

String s1=new String("abc");

String s2=new String("abc");

boolean b1=s1.equals(s2);

boolean b2=(s1==s2);

System.out.print(b1+" "+b2);

A)true false B) false true C) true true D)false false

7、下面语句的功能是( A )。

RandomAccessFile raf2 = new RandomAccessFile("1.txt","rw" );

A)打开当前目录下的文件1.txt,既可以向文件写数据,也可以从文件读数据。

B)打开当前目录下的文件1.txt,但只能向文件写入数据,不能从文件读取数据。

C)打开当前目录下的文件1.txt,但不能向文件写入数据,只能从文件读取数据。

D) 以上说法都不对。

8、应用程序的main方法中有以下语句,则输出的结果是( B )。

String s="12345#aaa#bbb#67890";

int n=s.indexOf("#");

int k=s.indexOf("#",n+1);

int m=s.indexOf("#",k+1);

String s2=s.substring(m+1);

System.out.println(s2);

A) 123456 B) 67890 C) aaa D) bbb

9、应用程序Test.java的源程序如下,在命令行键入:

java Test aaa bb c

回车后输出的结果是( A )。

public class Test {

public static void main(String args[]) {

int k1=args.length;

int k2=args[1].length();

System.out.print(k1+" "+k2);

}

}

A) 3 2 B)1 2 C) 1 3 D) 3 3

10、应用程序的main方法中有以下语句,则输出的结果是( B )。

int b[][]={{1}, {2,2}, {2,2,2}};

int sum=0;

for(int i=0;i

for(int j=0;j

sum+=b[i][j];

}

}

System.out.println("sum="+sum);

A) 32 B)11 C) 2 D) 3

11、应用程序的main方法中有以下语句,则执行后输出的结果是( D )。

int[] x={125,21,5,168,98};

int max=x[0];

for(int i=1;i

if(x[i]> max)

max =x[i];

}

System.out.println(max);

A) 125 B) 5 C) 98 D) 168

12、程序Test.java编译运行后输出的结果是( A )。

public class Test {

String s1="java";

public static void main(String args[]) {

int z=2;

Test t=new Test();

System.out.println(t.s1+z);

}

}

A) java2 B)2 C)没有输出结果D)java

13.Java application中的主类需包含main方法,以下哪项是main方法的正确形参?(B )

A、String args

B、String ar[]

C、Char arg

D、StringBuffer args[] 14.以下关于继承的叙述正确的是( A )。

A、在Java中类只允许单一继承

B、在Java中一个类只能实现一个接口

C、在Java中一个类不能同时继承一个类和实现一个接口

D、在Java中接口只允许单一继承

15.以下哪项可能包含菜单( B )。

A、JPanel

B、JFrame

C、JApplet

D、JDialog

16.若需要定义一个类变量或类方法,应使用哪种修饰符?( A )

A、static

B、package

C、private

D、public

17.给出下面代码,关于该程序以下哪个说法是正确的?( C )

public class Person{

static int arr[] = new int[5];

public static void main(String a[])

{

System.out.println(arr[0]);}

}

A、编译时将产生错误

B、编译时正确,运行时将产生错误

C、输出零

D、输出空

18.下列哪些语句关于Java内存回收的说明是正确的? (B )

A、程序员必须创建一个线程来释放内存

B、内存回收程序负责释放无用内存

C、内存回收程序允许程序员直接释放内存

D、内存回收程序可以在指定的时间释放内存对象

19.以下代码段执行后的输出结果为( A )

int x =-3;

int y =-10;

System.out.println(y%x);

A、-1

B、2

C、1

D、3

20.有以下程序片段,下列哪个选项不能插入到行1。( D )

1.

2 .public class Interesting{

3. //do sth

4.}

A、import java.awt.*;

B、package mypackage;

C、class OtherClass{ }

D、public class MyClass{ }

21.在使用interface声明一个接口时,只可以使用( D )修饰符修饰该接口。

A、private

B、protected

C、private protected

D、public

22、有以下方法的定义,请选择该方法的返回类型(D )。

ReturnType method(byte x, double y)

{

return (short) x/y*2;

}

A、byte

B、short

C、int

D、double

23、已知如下定义:String s = "story"; 下面哪个语句不是合法的( C)

A、s += "books";

B、s = s + 100;

C、int len = s.length;

D、String t = s + “abc”;

24、下面的代码段执行之后count的值是什么( D )

int count = 1;

for (int i = 1; i <= 5; i++) {

count += i;

}

System.out.println(count);

A、5

B、1

C、15

D、16

25、定义一个类,必须使用的关键字是( B )

A、public

B、class

C、interface

D、static

26、定义一个接口必须使用的关键字是( C )

A、public

B、class

C、interface

D、static

27、如果容器组件p的布局是BorderLayout,则在p的下边中添加一个按钮b,应该使用的语句是( C )

A、p.add(b);

B、p.add(b,BorderLayout.NORTH);

C、p.add(b,BorderLayout.SOUTH);

D、b.add(p,BorderLayout.EAST);

28、JFrame对象默认的布局管理器是(B )

A、FlowLayout

B、BorderLayout

C、CardLayout

D、null

29、下列哪一个import命令可以使我们在程序中创建输入/输出流对象(C)

A、import java.sql.*;

B、import java.util.*;

C、import java.io.*;

D、import https://www.wendangku.net/doc/ac14640716.html,.*;

30、下面哪一个import命令可以为我们提供编写网络应用程序的类(D)

A、import java.sql.*;

B、import java.util.*;

C、import java.io.*;

D、import https://www.wendangku.net/doc/ac14640716.html,.*;

31、如果需要从文件中读取数据,则可以在程序中创建哪一个类的对象(A)

A、FileInputStream

B、FileOutputStream

C、DataOutputStream

D、FileWriter

32、关于下面的程序Test.java说法正确的是( D )。

public class Test {

String x="1";

int y;

public static void main(String args[]) {

int z=2;

System.out.println(x+y+z);

}

}

A)3 B)102 C) 12 D)程序有编译错误

33、应用程序的main方法中有以下语句,则输出的结果是( A )。

int b[][]={{1, 1, 1}, {2,2}, {3}};

int prod=1;

for(int i=0; i

for(int j=0; j

Prod*=b[i][j];

}

}

System.out.println("sum="+sum);

A) 12 B)10 C) 9 D) 13

34、应用程序的main方法中有以下语句,则执行后输出的结果是( B )。

int[] x = {125,21,5,168,98};

int min = x[0];

for (int i=1; i

if(x[i] < min)

min = x[i];

}

System.out.println(min);

A) 125 B) 5 C) 98 D) 168

35、以下关于java异常说法不正确的是(D )。

A) Throwable 类是Java 语言中Error类和Exception类的父类。

B)当异常对象是Exception类(或其子类)的实例时,能通过Java 虚拟机或者throw 语句抛出该异常对象,并能通过try…catch…finally处理。

C)如果只用一个catch块捕捉多个异常对象,则catch 子句中的参数类型应是所有异常对象的父类。

D)以上说法都不对。

36.关于选择结构下列哪个说法正确?(B)

A.if语句和else语句必须成对出现

B.if语句可以没有else语句对应

C.switch结构中每个case语句中必须用break语句

D.switch结构中必须有default语句

37.while循环和do…while循环的区别是:(D)

A.没有区别,这两个结构任何情况下效果一样

B.while循环比do…while循环执行效率高

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

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

38.下列修饰符中与访问控制无关的是(D)

A.private B.public

C.protected D.final

39.void的含义:(A)

A.方法没有返回值B.方法体为空

C.没有意义 D.定义方法时必须使用40.return语句:(C)

A.只能让方法返回数值B.方法都必须含有C.方法中可以有多句return D.不能用来返回对象41.关于对象成员占用内存的说法哪个正确?(B)

A.同一个类的对象共用同一段内存

B、同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间C.对象的方法不占用内存

D.以上都不对

42.下列说法哪个正确C

A.不需要定义类,就能创建对象

B.对象中必须有属性和方法

C.属性可以是简单变量,也可以是一个对象

D、属性必须是简单变量

43.下列说法哪个正确?(A)

A、一个程序可以包含多个源文件

B、一个源文件中只能有一个类

C、一个源文件中可以有多个公共类

D、一个源文件只能供一个程序使用

44.关于方法main()的说法哪个正确?(C)

A.方法main()只能放在公共类中

B main()的头定义可以根据情况任意更改

C.一个类中可以没有main()方法

D.所有对象的创建都必须放在main()方法中

45.构造函数何时被调用?(A)

A、创建对象时

B、类定义时

C、使用对象的方法时

D、使用对象的属性时46.抽象方法:(C)

A、可以有方法体

B、可以出现在非抽象类中

C、是没有方法体的方法

D、抽象类中的方法都是抽象方法

47.关于构造函数的说法哪个正确?(C)

A、一个类只能有一个构造函数

B、一个类可以有多个不同名的构造函数

C、构造函数与类同名

D、构造函数必须自己定义,不能使用父类的构造函数

48.关于super的说法正确的是:(C)

A、是指当前对象的内存地址

B、是指当前对象的父类对象的内存地址

C、是指当前对象的父类

D、可以用在main()方法中

49.覆盖与重载的关系是(A)

A、覆盖只有发生在父类与子类之间,而重载可以发生在同一个类中B.覆盖方法可以不同名,而重载方法必须同名

C.final修饰的方法可以被覆盖,但不能被重载

D.覆盖与重载是同一回事

50.关于接口哪个正确?(A)

A、实现一个接口必须实现接口的所有方法

B.一个类只能实现一个接口

C.接口间不能有继承关系

D.接口和抽象类是同一回事

51.异常包含下列哪些内容?(A)

A.程序执行过程中遇到的事先没有预料到的情况

B.程序中的语法错误

C.程序的编译错误

D.以上都是

52.对于已经被定义过可能抛出异常的语句,在编程时:(A)A、必须使用try/catch语句处理异常,或用throws将其抛出

B.如果程序错误,必须使用try/catch语句处理异常

C.可以置之不理

D.只能使用try/catch语句处理

53.字符流与字节流的区别在于(D)

A.前者带有缓冲,后者没有

B.前者是块读写,后者是字节读写

C. 二者没有区别,可以互换使用

D. 每次读写的字节数不同

54.下列流中哪个不属于字节流(D)

A.FileInputStream

B.BufferedInputStream

C. FilterInputStream

D. InputStreamReader

55、以下哪一个不是JA V A的标准数据流( D )。

A. 标准输出数据流

B. 标准输入数据流

C. 标准错误数据流

D. 标准运算数据流

56、以下几个命名方法,不符合Java 命名规范的是:(D)

A.类的名称:MyClassName;B.变量的名称:myArray;

C.常量的名称:PI_V ALUE;D.成员函数的名称:GetName;

57、在下面的代码中,break语句的作用是:(C)

for (int i = 0; i < 10; i++)

if (aData[i] = = TargetData) {

FoundID = i;

break;

}

A.退出if 程序块;B.退出此次循环,直接进入下一次循环;

C.退出整个循环;D.退出整个函数;

58、以下项中,不属于成员变量的定义部分的是:D

A.访问级;B.变量名称;C.变量类型;D.变量的初始化方式;

59、以下关于异常捕获的原则中,错误的是(D )

A RuntimeException 可以不被捕获,Java会自动处理运行期异常。

B 先列出子类,后列出父类。

C 先列出具体的异常类,后列出通用的异常类。

D Exception类必须出现,而且必须作为catch块中第一个匹配的类。

60、Java的一个重要特点是结构中立性,这种结构中立性表现在(C)

A 用Java编写的源程序无需编译,直接通过Java平台解释执行。

B Java源程序在不同的硬件和操作系统下,直接编译成该硬件和操作系统能够运行的程序并运行。

C Java源程序编译成一种结构中立的目标文件格式,再有Java平台在不同的硬件和操作系统下运行。

D Java源程序编译成一种通用的可执行程序,现在的硬件和操作系统都支持这种通用的可执行程序。

61、下列关于Java语言的特点,描述错误的是( c )

A.Java是跨平台的编程语言B.Java支持分布式计算C.Java是面向过程的编程语言D.Java支持多线程

62、下述概念中不属于面向对象方法的是___d_____。

A.对象、消息B.继承、多态C.类、封装D.过程调用

63、结构化程序设计所规定的三种基本控制结构是( c )

A.输入、处理、输出B.树形、网形、环形

C.顺序、选择、循环D.主程序、子程序、函数64.以下说法正确的是(A)。

(A)Java中所有的方法都必须在类内定义

(B)Java中主方法可以不在类内定义,其他方法都必须定义在类内

(C)Java中主方法必须定义在类内,其他方法可以不必定义在类内

(D)Java中所有方法都不必在类内定义

65.Java源文件和编译后的文件扩展名分别是(C)。

(A).class 和.java (B).class 和.class

(C).java 和.class(D).java 和.java

66.要开发Java程序,需要安装的开发包是(A)。

(A)jdk (B)eclipse (C)notepad (D)记事本67.Java中所有类的默认超类为(A)。

(A)Object(B)Class (C)Main (D)Super

68.下列语句中,能正确创建一个名为scu的包是(C)。

(A)import java.scu; (B)import scu;

(C)package scu; (D)package java.scu;

69.关于Object类中定义的toString方法,以下说法正确的是(A)。

(A)toString方法可以将java预定义的类型转换为字符串类型

(B)toString方法可以将字符串类转换为java预定义的类型

(C)toString方法可以将所有其他类型转换为字符串类型

(D)toString方法可以将字符串类型转换为所有其他类型

70.在子类的构造函数中要调用父类的构造函数,需要用哪个关键字(D)。(A)final (B)extends (C)implements (D)super

71.在Java语言中,下列哪个包是编译器自动导入的?(A)。

(A)https://www.wendangku.net/doc/ac14640716.html,ng (B)https://www.wendangku.net/doc/ac14640716.html, (C)javax.swing (D)java.util 72.以下语句中,没有创建出字符串对象的是(A)。

(A)String str; (B)String str = “hello”;

(C)String str = new String( ); (D)new String(“hello”);

73.关于布尔类型说法正确的是(A)。

(A)boolean表示布尔类型,它的取值只有true和false

(B)bool表示布尔类型,它的取值只有true和false

(C)boolean表示布尔类型,它的取值只有1和0

(D)bool表示布尔类型,它的取值只有1和0

74.Java程序隐含的主线程是(B)。

(A)start (B)main (C)helloWorld (D)run

75.要定义实现Runnable接口的类,必须定义的方法是(A)。

(A)start (B)stop (C)run (D)yield

76.判断两个字符串s1,s2值是否相等,需要使用(D)。

(A)if(s1=s2) (B)if(s1==s2)

(C)if( equals(s1,s2)) (D)if(s1.equals(s2))

77.JDBC提供了3个接口用于实现SQL语句的发送,其中可以执行带输入参数的SQL语句的是(B)。

A.Statement

B.PreparedStatement

C.CallableStatement

D.DriverStatemtnt

78.Statement类提供了3种执行方法,其中用来的执行查询操作的是(C)。

A.executeUpdate

B.execute

C.executeQuery

D.query

79.负责处理驱动的调入,并产生对新的数据库连接的支持的是()。

A.DriverManager

B.Connection

C.Statement

D.ResultSet

80.使用下列哪个语句可以加载MySQL的数据库驱动?()

A.Class.forName(“com.mysql.jdbc.Driver”);

B.Class.loadDriver(“com.mysql.jdbc.Driver”);

C.Class.forName(“Com.mysql.jdbc.Driver”);

D.Class..loadDriver(“Com.mysql.jdbc.Driver”);

81.要串行化某些类的对象,这些类就必须实现( A )

A、Serializable接口

B、java.io.Externalizable接口

C、java.io.DataInput接口

D、DataOutput接口

82.如要抛出异常,应用下列哪种子句?( B )

A、catch

B、throw

C、try

D、finally

83、当某一线程正处于休眠状态,而另一个线程用Thread 类中的interrupt() 方法中断它时,抛出的异常类型是( C )。

A) IOException B) RuntimeException

C) InterruptedException D) ClassNotFoundException

84、下面的程序段的功能是( D )。

File file1=new File("d:\\xxx\\yyy\\zzz");

file1.mkdirs();

A)在当前目录下生成子目录:\xxx\yyy\zzz B)生成目录:e:\xxx\yyy\zzz

C)在当前目录下生成文件xxx.yyy.zzz D)以上说法都不对

二、填空题

1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、

编译生成字节码和解释运行字节码。

2、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用2字节内存空间,这样,无论是中文字符还是英文字符,都是占

用2字节内存空间。

3、设x = 2 ,则表达式( x + + )/3 的值是0 。

4、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为true和false。

5、抽象(abstract) 方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。最终(final)方法是不能被当前类的子类重新定义的方法。

6、创建一个名为MyPackage 的包的语句是package MyPackage ; ,

该语句应该放在程序的位置为:应该在程序第一句。

7、设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是120。

int s = 0 ;

for (int i = 0 ; i < MyIntArray.length ; i + + )

if ( i % 2 = = 1 )

s += MyIntArray[i] ;

System.out.println(s);

8、在Java程序中,通过类的定义只能实现单重继承,但通过接口的定义可以实现多重继承关系。

9、如果将类MyClass声明为public,它的文件名称必须是(MyClass.java)才能正常编译。

10、Java程序中的单行注释符是(//),多行注释符是(/* */ )。

11、Java中布尔类型的常量有两种,它们是(true)和(false)。

12、Java中用于定义小数的关键字有两个:(float)和(double),后者精度高于前者。

13、在Java中定义一个字符串类型的变量str的语句是:(String str;),定义一个具有10个元素的整型数组a的语句是:(int [] arr = new int[10];)。

14、导入mypackage包中的所有类的命令是(import mypackage.*;)。

15、当声明一个数组int arr[] = new int[5]; 时,这代表这个数组所保存的变量类型是(int),数组名是(arr),数组的大小为(5),数组元素下标的使用范围是(0到4)。

16、假设x=13,y=4,则表达式x%y != 0的值是(true),其数据类型是(boolean)。

17、异常处理是由(try)、(catch)和finally块三个关键所组成的程序块。

18、以下程序段的输出结果是(三角形)

int x = 5, y = 6, z = 4;

if (x + y > z && x + z > y && z + y > x)

System.out.println("三角形");

else

System.out.println("不是三角形");

19、下面程序段的执行结果是(6 5 4 3 2)

int a[] = { 2, 3, 4, 5, 6 };

for (int i = a.length - 1; i >= 0; i--)

System.out.print(a[i] + "");

20.定义类的保留字是(class ),定义接口的保留字是( interface )。21.Socket通常也称为(套接字),用于描述( IP地址) 和( 端口)。22.线程的优先级在( 1 )至( 10)之间,数值越大( 任务越紧急)。

23.构造方法是一种特殊的成员方法,构造方法名与( 类名) 相同。

24.Java语言只允许单继承,指每个类只能有一个( 父类)。

25.Java源程序的扩展名是( .java ),经过编译后的程序的扩展名是(.class )。

26. 在一个时间只能由一个线程访问的资源称为( 临界资源) 。访问临界资源的代码(临界代码)。

27. 在多线程系统中,多个线程之间有( 同步) 和( 互斥) 两种关系。28.JDBC的基本层次结构由(Java程序)、(JDBC API)、(JDBC驱动程序管理器)、(驱动程序)和数据库五部分组成。

29.JDBC API所包含的接口和类非常多,都定义在(java.sql)包和(javax.sql)包中。

30.使用(Class.forName( ))方法加载和注册驱动程序后,由(DriverManager)类负责管理并跟踪JDBC驱动程序,在数据库和相应驱动程序之间建立连接。31.(java.spl.Connection)接口负责建立与指定数据库的连接。32.(PreparedStatement)接口的对象可以代表一个预编译的SOL语句,它是(Statement)接口的子接口。

33.(ResultSet)接口表示从数据库中返回的结果集。

34.Java的事件处理机制包括(事件源)、事件和事件处理。

35. 当用户在TextField中输入一行文字后,按回车,实现__ActionListener_接口可实现对事件的响应,该接口中定义了actionPerformed方法。

36、闰年的条件是:凡不能被100整除但能被4整除的年份,或能被400整除的年份是闰年,假设我们用leap代表闰年,year代表年份,则闰年用逻辑表达式可描述为__

boolean leap=year%400= =0||year%100!=0&&year%4= =0;

37、当查询数据库时,ResultSet结果集为空时,调用getRow方法时,结果为-1。

38、所有异常类的父类是Exception。

39、对于一个输出数据流对象,在数据输出后,还需调用_flush方法将缓存中的数据强制输出。

40、当需要以某个类的对象为单位进行数据读写时,该类需要实现Serializable接口,进行输出和输出时应该使用ObjectInputStream和ObjectOutputStream进行读和写。

41、Java在基于TCP的网络编程中,服务器端通信使用的是类ServerSocket,客户端使用的是类Socket。

42、Java在基于UDP的网络编程中,类DatagramSocket用于收发数据,类DatagramPacket包含具体的数据信息。

43、Java语言提供了3种线程的实现方式,分别是继承Thread类,实现Runnable 接口,使用Timer类和继承TimerTask类。

44、在线程同步时,将一段程序声明为临界区时,需要使用关键字synchronized.

45、调用run方法,会使一个线程对象从新建状态转为就绪状态;执行sleep方法,会使线程睡眠若干毫秒;执行yield方法,会暂停当前线程的执行,允许其他线程执行,但不切换为阻塞状态。

46、线程的默认优先级是5,最高优先级是10,最低优先级是1。

三、写出下面程序的运行结果

1、import java.io.* ;

public class abc

{

public static void main(String args[ ])

{ int i, s = 0 ;

int a[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70 , 80 , 90 };

for ( i = 0 ; i < a.length ; i ++ )

if ( a[i]%3 = = 0 ) s += a[i] ;

System.out.println("s="+s);

}

}

运行结果:s = 180

2、阅读下面的程序,回答问题(◆问3分, 问3分,共6分)。

import java.awt.*;

import javax.swing.*;

public class T extends JFrame {

public T ( ) {

super("GridLayout");

Container con=this.getContentPane();

con.setLayout(new GridLayout(2,3));

con.add(new JButton("a"));

con.add(new JButton("b"));

con.add(new JButton("c"));

con.add(new JButton("d"));

con.add(new JButton("e"));

con.add(new JButton("f"));

setSize(200, 80);

setVisible(true);

}

public static void main(String args[]) {

new T();

}

}

◆画图表示程序运行后的图形界面。

如果程序通过实现某个接口处理按钮的动作事件,则该接口名为何?接口中的方法头声明如何?

答案:

接口名:ActionListener

接口中的方法:public void actionPerformed(ActionEvent e)

3、以下程序的输出结果为_Peter is 17 years old!___。

public class Person {

String name;

int age;

public Person(String name, int age) {

https://www.wendangku.net/doc/ac14640716.html, = name;

this.age = age;

}

public static void main(String[] args) {

Person c = new Person("Peter", 17);

System.out.println(https://www.wendangku.net/doc/ac14640716.html, + " is " + c.age + " years old!");

}

}

4、以下程序的输出结果为__课程号:101 课程名:ASP 学分:3___。

public class Course {

private String cNumber;

private String cName;

private int cUnit;

public Course(String number, String name, int unit) { cNumber = number;

cName = name;

cUnit = unit;

}

public void printCourseInfo() {

System.out.println("课程号:" + cNumber + " 课程名:" + cName + " 学分:" + cUnit);

}

}

class CourseTest {

public static void main(String[] args) {

Course c;

c = new Course("101", "ASP", 3);

c.printCourseInfo();

}

}

5、以下程序的输出结果为__汤姆猫体重:20.0斤___。

public class Tom {

private float weight;

private static String name;

public void setWeight(float weight) {

this.weight = weight;

}

private void out() {

System.out.println(name + "体重:" + weight + "斤");

}

public static void main(String[] args) {

https://www.wendangku.net/doc/ac14640716.html, = "汤姆猫";

Tom cat = new Tom();

cat.setWeight(20);

cat.out();

}

}

6、以下程序的输出结果_姓名:Tom 年龄:15 家庭住址:金水区电话:66123456 学校:九中_。

public class Father {

String name, address, tel;

int age;

public Father(String name, int age) {

https://www.wendangku.net/doc/ac14640716.html, = name;

this.age = age;

}

void out() {

System.out.print("姓名:" + name);

System.out.print(" 年龄:" + age);

}

void outOther() {

System.out.print(" 家庭住址:" + address);

System.out.print(" 电话:" + tel);

}

}

class Son extends Father {

String school;

public Son(String name, int age) {

super(name, age);

}

void out() {

super.out();

super.outOther();

System.out.println(" 学校:" + school);

}

public static void main(String args[]) {

Son son = new Son("Tom", 15);

son.address = "金水区";

son.school = "九中";

son.tel = "66123456";

son.out();

}

}

7、下列程序的运行结果是__12345____。

public class MyClass {

int a[] = { 1, 2, 3, 4, 5 };

void out() {

for (int j = 0; j < a.length; j++)

System.out.print(a[j] + "");

}

public static void main(String[] args) {

MyClass my = new MyClass();

my.out();

}

}

8、阅读下面的程序代码,并回答问题(◆问3分, 问3分,共6分)。

String s1 = new String("abcde");

String s2 = new String("abcde");

boolean b1= s1.equals(s2);

boolean b2 = s1== s2;

System.out.print(b1+" "+b2);

◆程序段执行后,在命令行的输出结果如何?

解释输出(1)的结果的原因?

答案:

◆ true false

equals方法比较两个字符串的内容是否相等;运算符“==”判断两个对象是否指向同一个引用,即是否为同一个对象。

9. 按要求填空

abstract class SuperAbstract{

void a(){…}

abstract void b();

abstract int c(int i);

}

interface AsSuper

{

void x();

}

abstract class SubAbstract extends SuperAbstract implements AsSuper

{

public void b(){…}

abstract String f();

}

public class InheritAbstract extends SubAbstract{

public void x(){…}

public int c(int i ) {…}

public String f(){…}

public static void main(String args[]){

InheritAbstract instance=new InheritAbstract();

instance.x();

instance.a();

instance.b();

instance.c(100);

System.out.println(instance.f());

}

}

在以上这段程序中:

抽象类有:SuperAbstract和(1)(写出类名)

非抽象类有:(2)(写出类名)

接口有:(3)(写出接口名)

AsSuper中的x()方法是(4)方法,所以在InheritAbstract中必须对它进行(5)答案:

(1) SuperAbstract;

(2) InheritAbstract;

(3) AsSuper;

(4) 抽象;

(5) 覆盖和实现。

四、程序设计题

1、按以下要求编写程序

(1) 创建一个Rectangle类,添加width和height两个成员变量

(2) 在Rectangle中添加两种方法分别计算矩形的周长和面积

(3) 编程利用Rectangle输出一个矩形的周长和面积

解答:

public class Rectangle {

float width, height;

public Rectangle(float width, float height) {

this.width = width;

this.height = height;

}

public float getLength(){

return (this.width + this.height) * 2;

}

public float getArea(){

return this.width * this.height;

}

public static void main(String [] args) {

Rectangle rect = new Rectangle(10, 20);

System.out.println("周长是:" + rect.getLength());

System.out.println("面积是:" + rect.getArea());

}

}

2、按以下要求编写程序

(1) 编写Animal接口,接口中声明run() 方法

(2) 定义Bird类和Fish类实现Animal接口

(3) 编写Bird类和Fish类的测试程序,并调用其中的run()方法

解答:

public interface Animal {

void run();

}

class Bird implements Animal {

public void run() {

System.out.println("鸟儿在飞...");

}

}

class Fish implements Animal {

public void run() {

System.out.println("鱼儿在游...");

}

}

public class TestAnimal {

public static void main(String[] args) {

Bird bird = new Bird();

bird.run();

Fish fish = new Fish();

fish.run();

}

}

3.编写一个完整的Java Application 程序。包含接口ShapeArea,类Circle、Rectangle、Test,具体要求如下:

⑴接口ShapeArea:

①接口方法

double getArea():求一个形状的面积

double getPerimeter ():求一个形状的周长

⑵类Rectangle:

实现ShapeArea接口,并有以下属性和方法:

①属性

width: double型,表示长方形的宽度

height:double型,表示长方形的长度

②方法

Rectangle(double w, double h):构造函数

toString():输出矩形的描述信息,如“width=1.0,height=2.0,perimeter=6.0,area=2.0”

⑶Test类作为主类要完成测试功能

①生成Rectangle对象

②调用对象的toString方法,输出对象的描述信息

interface ShapeArea{

public double getArea();

public double getPerimeter();

}

class Rectangle implements ShapeArea{

private double height;

private double width;

public Rectangle(double w, double h){

this.width = w;

this.height = h;

}

public double getArea() {

return height * width;

}

public double getPerimeter() {

return 2 * (height + width);

}

public String toString(){

return "width=" + width + ",height=" + height + ",perimeter=" + getPerimeter() + ",area" + getArea();

}

}

public class Test {

public static void main(String[] args) {

ShapeArea rectangle = new Rectangle(3, 4);

System.out.println(rectangle.toString());

}

}

4.编写一个JFrame框架程序,实现用户登录。其界面如下:

当用户名为”administrator”,密码为”root”时,在信息对话框中显示“系统登录成功,当前用户为administrator”,否则显示“系统登录不成功”。

答案如下:

Java程序设计__复习要点

Java程序设计__复习要点 第一讲Java语言概述 1、Java语言的特点:简单、完全面向对象;平台无关性;多线程;直接支持分布式的网络应用,高效的网络编程;可靠性;安全性。 2、运行机制:Java程序是半编译半解释的。Java源程序经编译器编译后产生字节码,Java解释器解释执行字节码。 3、Java程序的开发流程: (1)安装JDK,设置环境变量; (2)编写Java源程序:文件以.java作为后缀; (3)javac将源程序编译成字节码文件(.class文件); (3)由运行系统解释和执行字节码文件。 4、Java程序的分类:分两类 (1)Java application(Java应用程序):能独立运行的应用程序,有控制台和图形用户界面两种运行方式。main()方法是类首先执行的方法,语句必须写在类的方法中。编写完源代码首先通过javac编译,生成.class字节码文件,通过Java解释器(如java.exe)来运行字节码文件。 (2)Java applet(Java小应用程序):Applet是可以嵌入Web页面的最小应用,不能独立运行,必须嵌入到超文本(*.html)中,由浏览器中的Java解释器解释执行。对于Applet源程序,首先要编译生成字节码文件,再将字节码文件嵌入到超文本中。 简而言之: application:应用程序,编译:javac 源文件名;运行:java 字节码文件(含主函数) Applet:嵌入网页中运行的小应用程序,需有相应的html文件; 5、一个完整的Java源程序结构: package语句:该部分至多只有一句,必须放在源程序的第一句; import:该部分可以有若干import语句或者没有,必须放在所有的类定义之前;

JAVA程序设计习题库及答案

第一章JAVA语言概论 一、选择题 1。下列不属于java语言鲁棒性特点的是:A.java能检查程序在变异和运行时的错误 B。java 能运行虚拟机实现跨平台 C。java 自己操纵内存减少了内存出错的可能性D。java 还实现了真数组,避免了覆盖数据的可能2.java语言的执行模式是: A。全编译型 B.全解释型 C.半编译和半解释型 D.同脚本语言的解释模式 3.下列关于虚拟机说法错误的是: A。虚拟机可以用软件实现 B.虚拟机部可以用硬件实现 C.字节码是虚拟机的机器码 D.虚拟机把代码程序与各操作系统和硬件分开 4。java语言是1995年由()公司发布的 A.Sun B。Microsoft C.Borland D.Fox Software 5.下列不是虚拟机执行过程特点的是 A。双线程

B.多线程 C.动态链接 D.异常处理 6.java以JVM为基础,最下层是移植接口,由适配器和()组成A.网卡 B。Java os C。Java基本类 D。Java 应用程序和applet小程序 7。java程序的执行过程中用到一套JDK工具,其中javac.exe指A.java语言编译器 B.java字节码解释器 C.java文档生成器 D.java类分解器 8.java的API结构中,不属于类库主要包括的核心包的是 A.java包 B。javax C.javadoc包 D.org扩展包 9.每个java的编译单元可包含多个类或界面,但是每个编译单元最多只 能有()类或者界面是公共的 A.一个 B。两个 C。四个 D。任意多个

10.在当前的java实现中,每个编译单元就是一个以()为后缀的文件 A。java B.class C。doc D.exe 二、填空题 1. 1991年,SUN公司的Jame Gosling和Bill Joe等人,为电视、控制烤面包机等家用电器的交互操作开发了一个____软件,它是java的前身. 2. java是一个网络编程语言,简单易学,利用了____的技术基础,但又独立于硬件结构,具有可移植性、健壮性、安全性、高性能。 3. java可以跨平台的原因是____ 4. JVM的执行过程有三个特点:多线程,_____,异常处理; 5.JAVA程序的安全性体现在多个层次上,在_____,有语法检查;在解释层上,有字节码校验器、测试代码段格式和规则检查,访问权限和类型转换和法性检查,操作数堆栈的上溢或下溢,代码参数类型合法性等;在平台层上,通过配置策略,可设定访问资源域,而无需区分本地或远程。 6。 JAVA的产品主流操作系统平台是Solaris、_____和Macintosh. 7. JAVA系统运行时,通过______机制周期性的释放无用对象所使用的内存,完成对象的清除。 8。在JAVA语言中,将后缀名为______的源代码文件编译后形成后缀名为.c lass的字节码文件。 9。 JAVA语言的执行模式是半编译和______. 10. JAVA类库具有_____的特点,保证了软件的可移植性。 11。在编写执行JAVA程序的过程中需要用到一些工具,SUN公司为我们提供了一套JDK工具,它主要包括:javac.exe、java。exe、_____、ja vap.exe、jkb。exe 12.JAVA程序包括源代码(.java文件)、______、由归档工具jar生成的。jar文件、对象状态序列化.ser文件.

Java程序设计复习题

Java程序设计复习题 一、选择题 1.下面哪些是java语言中的关键字? A.sizeof B.abstract C.NULL D.Native 2.switch语句中表达式的值必须是 A.布尔型或字符型 B.整型或字符型 C.整型或布尔型 D.浮点型或整型3.以下程序测试String 类的各种构造方法,试选出其运行效果。 class STR{ public static void main(String args[]){ String s1=new String(); String s2=new String("String 2"); char chars[]={'a',' ','s','t','r','i','n','g'}; String s3=new String(chars); String s4=new String(chars,2,6); byte bytes[]={0,1,2,3,4,5,6,7,8,9}; StringBuffer sb=new StringBuffer(s3); String s5=new String(sb); System.out.println("The String No.1 is "+s1); System.out.println("The String No.2 is "+s2); System.out.println("The String No.3 is "+s3); System.out.println("The String No.4 is "+s4); System.out.println("The String No.5 is "+s5); } } A.The String No.1 is The String No.2 is String 2 The String No.3 is a string The String No.4 is string The String No.5 is a string B.The String No.1 is The String No.2 is String 2 The String No.3 is a string The String No.4 is tring The String No.5 is a string C.The String No.1 is The String No.2 is String 2 The String No.3 is a string The String No.4 is strin The String No.5 is a string D.以上都不对 4.按访问权限从高到低的排列顺序是 A.友好的,public,protected, private. B.public,protected,private,友好的. C.public,友好的,protected,private. D.public,protected,友好的,private

《JAVA语言程序设计》期末考试试题及答案(应考必备题库)

《JA V A语言程序设计》期末考试试题及答案2(应考必备题库) 一.判断题 1.Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。(√)2.Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。(×)1.Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。(√)2.Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。(×3.Java有垃圾回收机制,内存回收程序可在指定的时间释放内存对象。(×)4.构造函数用于创建类的实例对象,构造函数名应与类名相同,返回类型为void。(×)5.在异常处理中,若try中的代码可能产生多种异常则可以对应多个catch语句,若catch 中的参数类型有父类子类关系,此时应该将父类放在后面,子类放在前面。(√)6.拥有abstract方法的类是抽象类,但抽象类中可以没有abstract方法。(√)7.Java的屏幕坐标是以像素为单位,容器的左下角被确定为坐标的起点。(×)8.静态初始化器是在其所属的类加载内存时由系统自动调用执行。(√)9.在Java中对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一个各属性与赋值对象相同的新对象。(×) 二.单项选择题 1.Java application中的主类需包含main方法,以下哪项是main方法的正确形参?() A、String args B、String ar[] C、Char arg D、StringBuffer args[] 2.以下关于继承的叙述正确的是()。 A、在Java中类只允许单一继承 B、在Java中一个类只能实现一个接口 C、在Java中一个类不能同时继承一个类和实现一个接口 D、在Java中接口只允许单一继承 3.paint()方法使用哪种类型的参数? () A、Graphics B、Graphics2D C、String D、Color 4.以下哪个不是Java的原始数据类型() A、int B、Boolean C、float D、char

java程序设计试题库

《Java语言程序设计基础教程》 练习思考题参考答案 第1章Java程序设计概述 1、1单项选择题 1.编译Java Application源文件将产生相应得字节码文件,扩展名就是什么 A、、java ???? B、、class ?C、、html??? D、、exe 解答:B 2.Java语言具有许多优点与特点,下列选项中,哪个反映了Java中“一次编 译,随处运行”得特点. ?A、简单性????B、平台无关性 C、面向对象性???? D、安全性 解答:B 3.Java语言具有许多优点与特点,下列选项中,哪个反映了Java中并行机制得 特点。 ?A、多线程???B、平台无关性 C、面向对象性??? D、安全性 解答:A 4。在Java语言中,下列哪些语句关于内存回收得说明就是正确得? ?A.程序员必须创建一个线程来释放内存; B.内存回收程序负责释放无用内存; C.内存回收程序允许程序员直接释放内存; D.内存回收程序可以在指定得时间释放内存对象 解答:B 5.一个Java源文件中最多只能有多少个public类。 ?A、1个?B、2个

C、3个? D、任意多个 解答:A 6。下面哪一个不就是Java语言所具有得特点。 A、没有全局变量,在类得定义外部没有任何得变量定义; ?B、不直接支持指针操作,而使用更安全得引用类型; C、支持子类对父类得多继承; D、具有自动垃圾收集功能; 解答:C 7。下面哪一个不就是Java开发工具包JDK得组成部分. ?A、Java得编译器; B、Java得解释器;? ?C、Java得API继承类库; ?D、Eclipse开发工具; 解答:C 8。JDK提供得编译器就是()。 ?A、java、exe???B、javac、exe C、javap、exe??? D、javaw、exe 解答:B 9。作为Java应用程序入口得main方法,其声明格式可以就是() A、public voidmain(String[]args) B、public static void main(String []args) C、public static void Main(String* args) D、public int main(String []args) 解答:B 10.下列说法正确得就是( A ) A、JAVA程序得main方法必须写在类里面 B、JAVA程序中可以有多个main方法 C、JAVA程序中类名必须与文件名一样 D、JAVA程序得main方法中如果只有一条语句,可以不用{}(大括号)括起来 11。下列哪些语句关于Java内存回收得说明就是正确得? ( B) A、程序员必须创建一个线程来释放内存

Java程序设计复习题 (1)

一、单选题:在下列各题的备选答案中选择一个正确的。(每题2分,共20分) 1、下列方法中不是键盘事件KeyEvent实现方法的是() A .keyPressed(KeyEvent e) B .keyReleased(KeyEvent e) C .mouseClicked(MouseEevent e) D .keyTyped(KeyEvent e) 2、下列关于接口的描述,正确的是( C ) A 抽象类可以使用extends关键字来继承接口 B 接口可以被实例化 C 接口可以继承多个父接口 D 接口具有继承性,但不能继承父接口的所有属性和方法 3、下面的方法,当输入为2的时候返回值是多少?( C ) public int getValue(int i) { int result = 0; switch (i) { case 1: result = result + i; case 2: result = result + i * 2; case 3: result = result + i * 3; } return result; } A)0 B)2 C)4 D)10 4、下列叙述中,正确的是( A ) A)声明变量时必须制定一个类型 B)Java认为变量number与Number相同 C)Java中唯一的注释方式是“//” D)源文件中public类可以有0个或者多个 5、如下Java代码段,体现了( B )概念。 public void aMethod(String s){....} Java程序设计2 第1页共6页

public void aMethod(int i){.........} public void aMethod(int I,float f){.....} ..... A)多继承 B)重载 C)重写 D)多态 6、下列标识符(名字)命名原则中,正确的是( D ) A)类名的首字母小写 B)变量和方法名的首写字母大写 C)接口名的首写字母小写 D)常量完全大写 7、Java的核心包中,提供编程应用的基本类的包是( A ) A)https://www.wendangku.net/doc/ac14640716.html,ng B) Java.util C) Java.applet D) Java.rmi 8、Panel默认的布局管理器是( A ) A) FlowLayout B) GridLayout C) BorderLayout D) FlowLouLayout 9、File类是IO包中唯一表示磁盘文件信息的对象,它定义了一些与平台无关的方法来操纵文件。通过调用File类提供的各种方法,我们能够创建、删除文件、重命名文件、判断文件的读写权限及是否存在,设置和查询文件的最近修改时间等。下面的代码片段实现的是什么功能?( B ) File file = new File("C:\\test.dat"); if (file.exists()) { file.delete(); } A)创建C:\test.dat B) 删除C:\test.dat C) 打开C:\test.dat文件输出流 D) 移动C:\test.dat 10.下列常见的系统定义的异常中,哪个是输入、输出异常? ( B ) A)ClassNotFoundException B)IOException C)FileNotFoundException D)UnknownHostException 11、下列属于合法的Java标志符是( D ) A “ABC” B &5678 C +newer D saler 12、下列数组的初始化正确的是()b Java程序设计2 第2页共6页

Java程序设计习题附答案(一)

Java程序设计题库 第一部分绪论 1、下列关于Java语言的特点,描述错误的是(C) A.Java是跨平台的编程语言B.Java支持分布式计算 C.Java是面向过程的编程语言D.Java支持多线程 2、Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点?(B) A、安全性 B、多线性 C、跨平台 D、可移植 3、Java JDK中调试器的命令是(C)。 A、javac B、java C、jdb D、avah 4、运行jar文件中class文件需要在java命令后面加的参数为(A)。 A、-cp B-g C-d D-verbose 5、下面哪项在java中是不合法的标识符?(C) A、$user B、point C、You&me D、_endline 6、下面关于Java语言说法正确的是(ABCD)。 A、Java语言是面向对象的、解释执行的网络编程语言。 B、Java语言具有可移植性,是与平台无关的编程语言。 C、Java语言可对内存垃圾自动收集。 D、Java语言编写的程序虽然是“一次编译,到处运行”,但必须要有Java的运行环境。 7、在Java程序设计中,程序员创建()文件,然后编译器把它们转化为()文件。( B) A、源, HTML B、源, 字节代码 C、字节代码, 源 D、HTML, 字节代码 8、Java的JVM是指(B)。 A、由Java操作的家用设备(通常是一个漂亮的小烤箱) B、Java字节代码的解释程序 C、Java源代码的编译器 D、运行Java 所需的硬件设备 9、在Java中,关于CLASSPA TH环境变量的说法不正确的是(A)。 A、CLASSPATH一旦设置之后不可修改,但可以将目录添加到该环境变量中。 B、编译器用它来搜索各自的类文件。 C、CLASSPATH是一个目录列表。 D、解释器用它来搜索各自的类文件。 10、一个可以独立运行的Java应用程序(D)。

JAVA语言程序设计期末考试试题及答案

1234124JAVA语言程序设计考试试题及部分答案 一、单选题:(每题1分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项的标记写在题干后的括号内。 1.下列语句序列执行后,k 的值是( B ) 。 int m=3, n=6, k=0; while( (m++) < ( -- n) ) ++k; A)0 B) 1 C) 2 D) 3 2.设i 、j 为int 型变量名, a 为int 型数组名,以下选项中,正确的赋值语句是( B ) 。 A)i = i + 2 B) a[0] = 7; C) i++ - --j; D) a(0) = 66; 3.Java语言的类间的继承关系是(B )。 A)多重的B) 单重的C) 线程的D) 不能继承 4.设有定义int i = 6 ; ,则执行以下语句后,i 的值为( C ) 。 i += i - 1; A) 10 B) 121 C) 11 D) 100 5.下列选项中,用于在定义子类时声明父类名的关键字是( C ) 。 A) interface B) package C) extends D) class 6.若已定义byte[ ] x= {11,22,33,-66} ; 其中O W k<3,则对x数组元素错误的引用是(C )。 A) x[5-3] B) x[k] C) x[k+5] D) x[0] 7.下列语句序列执行后, ch1 的值是( B ) 。 char ch1='A',ch2='W'; if(ch1 + 2 < ch2 ) ++ch1; A) 'A' B) 'B' C) 'C' D) B

Java程序设计复习题4

Java程序设计复习题4 1、Java源程序经编译生成的字节码文件的扩展名为(A ),字节码文件由解释器执行。 A)class B)java C)exe D)html 2、下列的变量定义中,错误的是( D)。 A)int i; B)int i=Integer.MAX_V ALUE; C)static int i=100; D)int 123_$; 3、下列不属于WindowListener接口的是( C ) A)windowOpened() B)windowClosed() C)windowActivated() D)mouseDragged() 4、以下字符常量中不合法的是(B )。 A)'|' B)'\'' C)"\n" D)'我' 5、若以下变量均已正确定义并赋值,下面符合Java语言语法的语句是( )。 A)b = a!=7 ; B)a = 7 + b + c=9; C)i=12.3* % 4; D)a = a + 7 = c + b; 6、下列类头定义中,错误的是( B)。 A)class x {.. } B)public x extends y{ .... } C)public class x extends y{ .... } D)class x extends y implements y1{ .... } 7、下列选项中,用于在定义类头时声明父类名的关键字是(C )。 A)return B)interface C)extends D)class 8、设i,j 为类x 中定义的double 型变量名,下列x 类的构造函数中不正确的是( )。 A)double x(double k ){ i=k; return i; }

非常经典的JAVA编程题全集(50题及答案)

【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少 //这是一个菲波拉契数列问题 public class lianxi01 { public static void main(String[] args) { System.out.println("第1个月的兔子对数: 1"); System.out.println("第2个月的兔子对数: 1"); int f1 = 1, f2 = 1, f, M=24; for(int i=3; i<=M; i++) { f = f2; f2 = f1 + f2; f1 = f; System.out.println("第" + i +"个月的兔子对数: "+f2); } } } 【程序2】 题目:判断101-200之间有多少个素数,并输出所有素数。 程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。 public class lianxi02 { public static void main(String[] args) { int count = 0; for(int i=101; i<200; i+=2) { boolean b = false; for(int j=2; j<=Math.sqrt(i); j++) { if(i % j == 0) { b = false; break; } else { b = true; } } if(b == true) {count ++;System.out.println(i );} } System.out.println( "素数个数是: " + count); } } 【程序3】 题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。 public class lianxi03 { public static void main(String[] args) { int b1, b2, b3; for(int m=101; m<1000; m++) {

Java程序设计复习题(1)

JAVA程序设计复习题 一、单项选择题(在每小题列出的各选项中只有一个是符合题目要求的,请将其代码填在括号内) 1、欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的?( B ) A、ArrayList myList=new Object(); B、ArrayList myList=new ArrayList(); C、ArrayList myList=new List(); D、List myList=new List(); 2、paint()方法使用哪种类型的参数?( A ) A、Graphics B、Graphics2D C、String D、Color 3、指出正确的表达式( C ) A、byte=128; B、Boolean=null; C、long l=0xfffL; D、double=0.9239d; 4、指出下列程序运行的结果( B ) public class Example{ String str=new String("good"); char[]ch={'a','b','c'}; public static void main(String args[]){ Example ex=new Example(); ex.change(ex.str,ex.ch); System.out.print(ex.str+" and "); Sytem.out.print(ex.ch); } public void change(String str,char ch[]){ str="test ok"; ch[0]='g'; } } A、good and abc B、good and gbc C、test ok and abc D、test ok and gbc 5、运行下列程序, 会产生什么结果( A ) public class X extends Thread implements Runable{ public void run(){ System.out.println("this is run()"); } public static void main(String args[]){ Thread t=new Thread(new X()); t.start(); } } A、第一行会产生编译错误 B、第六行会产生编译错误 C、第六行会产生运行错误 D、程序会运行和启动 6、容器被重新设臵大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改变?( C )

Java程序设计期末考试题

Java程序设计期末考试题 一、选择题 下列说法中,不正确的是( A ) A) 一个java源程序编译通过后,得到的结果文件数也只有一个。 B) 一个java源程序经过编译后,得到的文件的扩展名一定是.class。 C) 一个java源程序只能有一个public class类定义,且源文件的名字与public class的类名相同,扩展名必须是.java。 D) 一个java源程序可以包含多个class类。 请问,以下哪些描述是正确的? 请选择所有正确答案: (1)如果package语句存在,则必须出现在源文件的非空白首行。(2)如果import语句存在,则必须出现在源文件的非空白首行。(3)如果main()方法存在,则必须出现在源文件的非空白首行。(4)如果在源文件中声明了一个public接口,则其名称必须和源文件名一致。 请问,以下哪些是Java中的合法标识符? 请选择所有正确答案: (1)my-id (2)my_id

(3)101ids (4)id101 请问,以下哪些是合法的标识符? 请选择所有正确答案: (1)%abcd (2)$abcd (3)1abcd (4)package (5)_a_long_name 以下哪个不是Java的关键字?() A、FALSE B、const C、this D、void 以下哪个不是Java的关键字?() A、TRUE B、goto C、this D、void Java的字符类型采用的是Unicode编码方案,每个Unicode码占用()个比特位。 A、8 B、16

C、32 D、64 请问一下哪些修饰符用于声明一个常量?请选择一个正确答案:static final abstract public 给出以下代码,该程序的运行结果是什么? public class Example{ final int x=0; Example(){ x=1; } final int aMethod(){ return x; } } 请选择所有正确答案: 代码编译错误,因为非final类中存在final方法。 代码编译成功。

java程序设计习题集

Java程序设计习题集 第一章Java基础知识 §1.1Java概述 1.完成在Windows 2000操作系统下环境变量的配置 2.创建一个Java程序,输出自己的基本信息:名字和年龄。 3.概述Java语言的版本发展过程。 4.简述Java语言的运行机制。 5.在自己的机器上用JDK开发运行环境完成第一个Java程序的编辑、编译、运行过程。 6.简述Java语言的特点,Java虚拟机的概念及作用。 §1.2 Java基本语法 1.什么是变量?什么是常量? 2.什么叫表达式,Java语言中共有几种表达式? 3.下面哪些表达式不合法?为什么? HelloWorld 2Thankyou _First -Month 893Hello non-problem HotJava implements $_MyFirst 4. 以下的选项中能正确表示Java语言中的一个整型常量的是( )。 A) 12. B) -20 C) 1,000 D) 4 5 6 5. 以下选项中,合法的赋值语句是( )。 A) a = = 1; B) ++ i; C) a=a + 1= 5; D) y = int ( i ); 6. 若所用变量都已正确定义,以下选项中,非法的表达式是( )。 A) a != 4||b==1 B) 'a' % 3 C) 'a' = 1/2 D) 'A' + 32 7. 若有定义int a = 2;则执行完语句a += a -= a * a; 后,a的值是( )。 A) 0 B) 4 C) 8 D) -4 8. 在Java语言中,逻辑常量只有true 和 ___________ 两个值。 9. Java语言中的浮点型数据根据数据存储长度和数值精度的不同,进一步分为float 和 __________两种具体类型。 10. Java语言是( )。 A.面向问题的解释型高级编程语言 B.面向机器的低级编程语言 C.面向过程的编译型高级编程语言 D.面向对象的解释型高级编程语言 11. 下列的变量定义中,错误的是( )。 A) int i; B) int i=Integer.MAX_VALUE; C) static int i=100; D) int 123_$; 12. 以下的变量定义语句中,合法的是( )。 A) float $_*5= 3.4F; B) byte b1= 15678; C) double a =Double. MAX_VALUE; D) int _abc_ = 3721L; 13. 以下字符常量中不合法的是( )。 A) '|' B) '\'' C) "\n" D) '我' 14. 若以下变量均已正确定义并赋值,下面符合Java语言语法的语句是( )。 A) b = a!=7 ; B) a = 7 + b + c=9; C) i=12.3* % 4; D) a = a + 7 = c + b;

Java程序设计试卷及答案

Java程序语言试卷(A) 答题卡: 一题: 1.___________________________________________________________ 2.___________________________________________________________ 3.___________________________________________________________ 4.___________________________________________________________ 5.___________________________________________________________ 6.___________________________________________________________ 四题: 1.___________________________________________________________ 2.___________________________________________________________ 3.___________________________________________________________ 4.___________________________________________________________ 5.___________________________________________________________五题:

《JAVA程序设计》习题

《J A V A程序设计》练习题 写出下面程序的运行结果 1、 import java.io.*; public class abc { public static void main(String args [ ]) { AB s = new AB("Hello!","I love JAVA."); System.out.println(s.toString( )); } } class AB { String s1; String s2; public AB(String str1, String str2) { s1 = str1; s2 = str2; } public String toString( ) { return s1+s2; } } 运行结果: Hello!I love JAVA 2、 import java.io.* ; public class abc { public static void main(String args[ ]) { int i, s = 0 ; int a[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70 , 80 , 90 }; for ( i = 0 ; i < a.length ; i ++ )

if ( a[i]%3 = = 0 ) s += a[i] ; System.out.println("s="+s); } } 运行结果: S=180 //****3、import java.io.* ; public class abc { public static void main(String args[ ]) { System.out.println("a="+a+"\nb="+b); } } class SubClass extends SuperClass { int c; SubClass(int aa, int bb, int cc) { super(aa, bb); c=cc; } } class SubSubClass extends SubClass { int a; SubSubClass(int aa, int bb, int cc) { super(aa, bb, cc); A = aa+bb+cc; } void show() { System.out.println("a="+a+"\nb="+b+"\nc="+c); } } 运行结果:a=60 b=20 c=30

《Java程序设计》期末复习

随堂测验、考勤卷 期末考试题型 一、填空题 1、Java源程序文件的扩展名是___java_______,编译源程序的命令是___javac________。 2、Java程序可分为___applet______________和__application____________两种类型。 3、声明静态成员的关键字是_____static__________,定义一个接口的关键字是_____interface_________。 4、创建 pack1.pack2包的语句是____package pack1.pack2_____________,import x.y.Myclass;语句的功能是_____通过import语句来导入到x,y.Myclass这个类下_____________。 5、___Object______类是所有Java 类的直接或者间接父类。 6、转义字符___\t__能够实现“将输出内容跳到下一个制表位”的功能。 7、假设在程序中已执行:Calendar current=new GregorianCalendar();语句,则current.get(Calendar.YEAR)返回的是________当前时间的年份____________________。 二、单项选择题 1、以下哪个是应用程序main()方法的正确形式?【 B 】 A. public static int main(String args[]) B. public static void main(String args[]) C. public static void MAIN(String args[]) D. public static void main(char args[]) 2、请在Java预定义了的数据类型中,为“姓名”选择一种合适的数据类型:【 B 】 A.int B.String C.boolean D. float 3、short型数据的取值范围为【 C 】 A. -27 ~ 27-1 B. -216 ~ 216-1 C. -215 ~ 215-1 D. -231 ~ 231-1 4、下列标识符中,哪一个是合法的?【 A 】 A. $person B. 2ab C. *point D. this 5、已知 x=10,则条件表达式 (x>=5) && (x <=2) 的值是【 D 】 A. 0 B. 1 C. true D. false 6、下列程序片段的输出结果是【 A 】 int X=0; if (X>0) X=1; switch(x) { case 1: System.out.println(1); case 0: System.out.println(0); case 2: System.out.println(2); break; case 3: System.out.println(3); default: System.out.println(4); break; }

大学《java程序设计》考试题库及答案

若有定义int a=2,b=2; 则表达式(a++)+(++b) 的值是( )。 A. 5 监听器接口的方法返回值的类型是()。C. void 在浏览器中执行applet 程序,以下选项中的哪个方法将被最先执行()。 D. init() 以下哪个不是Java的原始数据类型() B. Boolean 向Applet传递参数的正确描述是()。C. C. PARAM name="age,value=20" 阅读下列代码; public class Test{ String s="One World One Dream"; public static void main(String args[]){ System.out.println(s); } } 其运行结果是_ C. 编译时出错//除非创建Text类的对象 如果容器组件p的布局是BorderLayout,则在p的下边中添加一个按钮b,应该使用的语句是()。 A. p.add(b,"South"); 编译和运行下面的应用程序,并在命令行界面输入12345 ,则回车后屏幕输出的结果是( )。public class A { public static void main(String args[]) throws IOException{ BufferedReader buf=new BufferedReader( new I nputStreamReader(System.in)); String str=buf.readLine(); int x=Integ er.parseInt(str); System.out.println(x/100); } } B. 123 构造函数何时被调用?() B. 创建对象时 以下哪项可能包含菜单条()。 D. Frame

Java程序设计复习题

Java程序设计复习题 一、单项选择题 1、一个Java程序运行从上到下的环境次序是( C ) A.操作系统、Java程序、JRE/JVM、硬件 B.JRE/JVM、Java程序、硬件、操作系统 C.Java程序、JRE/JVM、操作系统、硬件 D.Java程序、操作系统、JRE/JVM、硬件 2、下面哪些是合法的标识符。( A ) A、persons B、12345 C、 *point D、this 3、下说法正确的是:( C ) A.一个可直接运行的Java源文件中可以有多个public类,其中必须有一个和文件同名 B.一个可直接运行的Java源文件中可以没有public类 C一个可直接运行的Java源文件中只能有一个且和文件同名的public类。 D. 一个可直接运行的Java源文件中可以有多个public类,且可以没有和文件同名的类。 4、在java中定义常量的正确语法为:( C ) A . int value=20; B. const int VALUE=20; C. final int VALUE=20; D. int VALUE=20; 5、编译一个定义了3个类和10个办法的Java源文件后,会产生多少个字符码文件,扩展名是什么( D ) A、13个字节码文件,扩展名是.class B、1个字节码文件,扩展名是.class C、3个字节码文件,扩展名是.java D、3个字节码文件,扩展名是.class 6、下列属于Java语言的特点的一项是( D )。 A、运算符重载 B、类间多重继承 C、指针操作 D、垃圾回收 7、在创建Applet应用程序时,需要用户考虑的问题是( B )。 A、窗口如何创建 B、绘制的图形在窗口中的位置 C、程序的框架 D、事件处理 8、于Java语言的内存回收机制,下列选项中最正确的一项是( C )。 A、Java程序要求用户必须手工创建一个线程来释放内存 B、Java程序允许用户使用指针来释放内存 C、内存回收线程负责释放无用内存 D、内存回收线程不能释放内存对象 9、有如下的程序代码,在执行完后x和y的值是多少( D ) int x= 8, y=2, z; x=++x*y; z=x/y++; A)x=16, y=2 B)x=16, y=4 C)x=18, y=2 D)x=18, y=3

相关文档
相关文档 最新文档