Java程序设计题库

Java程序设计题库
Java程序设计题库

Java程序设计题库

第一部分绪论

**下列关于Java语言的特点,描述错误的是( C )

A.Java是跨平台的编程语言B.Java支持分布式计算

C.Java是面向过程的编程语言D.Java支持多线程

** Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点?(B) A、安全性B、多线性C、跨平台D、可移植

** Java JDK中调试器的命令是(C)。

A、javac

B、java

C、jdb

D、avah

**运行jar文件中class文件需要在java命令后面加的参数为(A)。

A、-cp B-g C-d D-verbose

**下面哪项在java中是不合法的标识符?(C)

A、$user

B、point

C、Y ou&me

D、_endline

**下面关于Java语言说法正确的是(ABCD)。

A、Java语言是面向对象的、解释执行的网络编程语言。

B、Java语言具有可移植性,是与平台无关的编程语言。

C、Java语言可对内存垃圾自动收集。

D、Java语言编写的程序虽然是“一次编译,到处运行”,但必须要有Java的运行环境。**在Java程序设计中,程序员创建()文件,然后编译器把它们转化为()文件。(B)

A、源, HTML

B、源, 字节代码

C、字节代码, 源

D、HTML, 字节代码

**Java的JVM是指(B)。

A、由Java操作的家用设备(通常是一个漂亮的小烤箱)

B、Java字节代码的解释程序

C、Java源代码的编译器

D、运行Java 所需的硬件设备

**在Java中,关于CLASSPA TH环境变量的说法不正确的是(A)。

A、CLASSPA TH一旦设置之后不可修改,但可以将目录添加到该环境变量中。

B、编译器用它来搜索各自的类文件。

C、CLASSPA TH是一个目录列表。

D、解释器用它来搜索各自的类文件。

**一个可以独立运行的Java应用程序(D)。

A、可以有一个或多个main方法。

B、最多只能有两个main方法。

C、可以有一个或零个main方法。

D、只能有一个main方法。

**Java应用程序的入口方法是( D)。

A. start()

B. init()

C. paint()

D. main()

**下列描述中,错误的是(A)。

A、Java要求编程者管理内存。

B、Java的安全性体现在多个层次上。

C、Applet要求在支持Java的浏览器上运行。

D、Java内含多线程机制。

**当在命令行输入:java myprog good morning 运行以下代码,输出结果是(D)。

public class myprog{

public static void main(String argv[])

{

System.out.println(argv[2]);

}

}

A. myprog

B. good

C. morning

D. Exception raised: "jav https://www.360docs.net/doc/b017216538.html,ng.ArrayIndexOutOfBoundsException: 2"

**Java程序可以分为应用程序(Application)和小应用程序(Applet)两种。

第二部分结构化程序设计

**下列整型数据类型中,需要内存空间最少的是(D)。

A. short

B. long

C. int

D. byte

**下面哪项在java中是不合法的标识符?(C)

A、$user

B、point

C、Y ou&me

D、_endline

**下面不属于Java关键字的是(A)。

A. sealed

B. private

C. new

D. transient

**下列哪一项不是Java保留字?(A)

A、sizeof

B、super

C、abstract

D、break

**在switch(expression)语句中,expression的数据类型不能是(D)。

A. double

B. char

C. byte

D. short

**下列选项中哪一个是表达式1+2+"aa"+3的值(B)?

A)"12aa3"B) "3aa3"C) "12aa"D) "aa3"

**以下程序的运行结果是:( C )

public class Increment{

public static void main(String args[]){

int c;

c = 2;

System.out.println(c);

System.out.println(c++);

System.out.println(c);

}

}

A.2 B.2 C.2 D.3

2 3 2 4

2 3 3 4

**编译运行以下程序后,关于输出结果的说明正确的是( C )

public class Conditional{

public static void main(String args[ ]){

int x=4;

System.out.println(“value is “+ ((x>4) ? 99.9 :9));

}

}

A.输出结果为:value is 99.99 B.输出结果为:value is 9

C.输出结果为:value is 9.0 D.编译错误

**在Java语言中,下列哪个包是编译器自动导入的?(B)

A、java.applet

B、https://www.360docs.net/doc/b017216538.html,ng

C、java.io

D、java.awt

**下列关于for循环和while循环的说法中哪个是正确的? (D)

A.while循环能实现的操作,for循环也都能实现

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

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

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

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

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

C.顺序、选择、循环D.主程序、子程序、函数

**有500个小朋友拉成一个圆圈,从其中一个小朋友开始依次编号1-500,从1号小朋友开始循环1-3报数,数到3的小朋友就退出。编写一个Java应用程序,计算出最后一个小朋友的号码是多少?(20分)

1、**某企业为了促销,搞抽奖宣传活动,奖品为新款手机一部,抽奖规则如下:

(1)有n个盒子摆成一圈,盒子按顺时针方向依次编号为0,1,2,……,n-1。手机随机放在其中一个盒子中。(n为自然数)

(2)从0号盒子开始摸奖,顺时针方向计数,每遇到第m个盒子就摸奖一次。(m为自然数,m

(3)直到重新摸到0号盒子为止。

例如n=5,m=3,那么摸奖经过的盒子编号依次为0,3,1,4,2,0。

请编写一个完整的程序,随机输入n,m(m

**下面是Java的Boolean对象的值为(C)

A、true;

B、false

C、new Boolean(true)

D、Boolean;

第三部分面向对象程序设计

**引用数据类型变量具有基本属性为(ABCD)

A、变量名

B、数据类型

C、存储单元

D、变量值。

**面向对象技术的特性是(ACD)

A、继承性

B、有效性

C、多态性

D、封装性。

**下列哪个命题为真?(C)

A、所有类都必须定义一个构造函数。

B、构造函数必须有返回值。

C、构造函数可以访问类的非静态成员。

D、构造函数必须初始化类的所有数据成员。

**关于子类与父类关系的描述正确的是(ACD)

A、子类型的数据可以隐式转换为其父类型的数据;

B、父类型的数据可以隐式转换为其子类型的数据;

C、父类型的数据必须通过显示类型转换为其子类型的数据;

D、子类型实例也是父类型的实例对象。

**下列哪一项说法最好地描述了Java中的对象?(c)

A、对象是通过import命令引入到程序中的所有事情

B、对象是方法的集合,这些方法在小程序窗口或应用程序窗口中产生图形元素,或者计算和返回值

C、对象是一种数据结构,它具有操作数据的方法

D、对象是一组具有共同的结构和行为的类

**下面哪个关键字不是用来控制对类成员的访问的?(C)

A、public

B、protected

C、default

D、private

**Java语言正确的常量修饰符应该是(D)

A、final

B、static final

C、static

D、public static final;

**接口的所有成员域都具有public、static和final属性。

**接口的所有成员方法都具有public和abstract属性。

**编译下列源程序会得到哪些文件?(C)

class A1{

}

class A2{

}

public class B{

public static void main(String args[]){

}

}

A) 只有B.class

B)只有A1.class和A2.class文件

C)有A1.class、A2.class和B.class文件

D) 编译不成功

**下列哪种说法是正确的?(A)

A、私有方法不能被子类覆盖。

B、子类可以覆盖超类中的任何方法。

C、覆盖方法可以声明自己抛出的异常多于那个被覆盖的方法。

D、覆盖方法中的参数清单必须是被覆盖方法参数清单的子集。

**关于类继承的说法,正确的是(b)。

A、Java 类允许多重继承

B、Java接口允许多继承

C、接口和类都允许多继承

D、接口和类都不允许多继承

**使用以下哪个保留字可以使只有在定义该类的包中的其他类才能访问该类?(D)A)abstract B)private

C)protected D)不使用保留字

**为了区分重载多态中同名的不同方法,要求(A)。

A. 采用不同的参数列表

B. 返回值类型不同

C. 调用时用类名或对象名做前缀

D. 参数名不同

**下述概念中不属于面向对象方法的是____D____。

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

**下列关于构造方法的叙述中,错误的是( C )

A.Java语言规定构造方法名与类名必须相同

B.Java语言规定构造方法没有返回值,但不用void声明

C.Java语言规定构造方法不可以重载

D.Java语言规定构造方法只能通过new自动调用

**如果str表示一个String对象“73”,那么以下哪些表达式将会把这个字符串转换为int值73?请选出正确答案。(C)

A)Integer.getInt(str)

B)((int) str)

C)(new Integer(str)).intV alue()

D)Integer.intV alue(str)

**下列哪个类的声明是正确的?(D)

A.abstract final class HI{} B.abstract private move(){}

C.protected private number; D.public abstract class Car{}

**关于被私有访问控制符private修饰的成员变量,以下说法正确的是( C )A.可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类

B.可以被两种类访问和引用:该类本身、该类的所有子类

C.只能被该类自身所访问和修改

D.只能被同一个包中的类访问

**在Java中,关于final关键字的说法正确的是(AC)。

A、如果修饰变量,则一旦赋了值,就等同一个常量。

B、如果修饰类,则该类只能被一个子类继承。

C、如果修饰方法,则该方法不能在子类中被覆盖。

D、如果修饰方法,则该方法所在的类不能被继承。

**、在Java中,下面关于包的陈述中正确的是(AD)。

A、包的声明必须是源文件的第一句代码。

B、包的声明必须紧跟在import语句的后面。

C、只有公共类才能放在包中。

D、可以将多个源文件中的类放在同一个包中。

**下面有关私有变量和私有方法的声明,哪些叙述是对的?(AD)

A、用关键字private修饰的成员变量和方法,称为私有变量和私有方法。

B、用关键字protected修饰的成员变量和方法,称为私有变量和私有方法。

C、用关键字public修饰的成员变量和方法,称为私有变量和私有方法。

D、私有变量不能通过对象直接访问,只有在本类中创建的自己对象,才能访问自己的私有变量。

**下面有关变量及其作用域的陈述哪些是对的?(ABC)

A、在方法里面定义的局部变量在方法退出的时候被撤销。

B、局部变量只在定义它的方法内有效。

C、在方法外面定义的变量(即实例变量)在对象被构造时创建。

D、在方法中定义的方法的参变量只要该对象被需要就一直存在。

**下面关于继承的叙述哪些是正确的?(AD)

A、在java中只允许单一继承。

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

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

D、java的单一继承使代码更可靠。

**以下声明合法的是( B )

A.default String s;B.public final static native int w( ) C.abstract double d;D.abstract final double hyperbolicCosine( )

**类Test1定义如下:

1.public class Test1{

2.public float aMethod(float a,float b){ }

3.

4.}

将以下哪种方法插入行3是不合法的。( B )

A、public float aMethod(float a,float b,float c){ }

B、public float aMethod(float c,float d){ }

C、public int aMethod(int a,int b){ }

D、private float aMethod(int a,int b,int c){ }

**下面是Example.java文件的完整代码,请找出会产生编译错误的行(C)。

1) class BaseClass {

2) public String str;

3) public BaseClass(){

4) System.out.println(“ok”);}

5) public BaseClass(String s){

6) str=s;}}

7) class SubClass extends BaseClass{

8) }

9) public class Example{

10) public void method(){

11) SubClass s=new SubClass(“hello”);

12) BaseClass b=new BaseClass(“world”);

13) }

14) }

A、7

B、10

C、11

D、12

**下面关于类的说法错误的是(B)。

A、类是Java语言中的一种复合数据类型。

B、Java语言的类支持单继承和多继承。

C、类是对所有具有一定共性的对象的抽象。

D、类中包含数据变量和方法。

**下列关于变量的叙述哪个是错的?(c)

A、实例变量是类的成员变量。

B、在方法中定义的局部变量在该方法被执行时创建。

C、实例变量用关键字static声明。

D、局部变量在使用前必须被初始化。

**已知A类被打包在packageA, B类被打包在packageB ,且B类被声明为public ,且有一个成员变量x被声明为protected控制方式。C类也位于packageA包,且继承了B类。则以下说法正确的是(C)。

A、A类的实例不能访问到B类的实例

B、A类的实例能够访问到B类一个实例的x成员

C、C类的实例可以访问到B类一个实例的x成员

D、C类的实例不能访问到B类的实例

**下面关于Java语言中实例方法和类方法的说法,哪几项是对的?(BC)

A、实例方法可以直接通过类名调用

B、类方法可以直接通过类名调用。

C、实例方法可以操作实例变量也可以操作类变量。

D、类方法可以操作实例变量也可以操作类变量。

**下面叙述哪些是正确的?(ABC)

A、java中的集合类(如V ector)可以用来存储任何类型的对象,且大小可以自动调整。但需要事先知道所存储对象的类型,才能正常使用。

B、在java中,可以用异常(Exception)来抛出一些并非错误的消息,但这样比直接从函数返回一个结果要花费更大的系统开销。

C、java接口包含函数声明和常量声明。

D、java中,子类不可以访问父类的私有成员和受保护的成员。

**下列说法正确的是(A)。

A. final 可修饰类、属性、方法

B. abstract可修饰类、属性、方法

C. 定义抽象方法需有方法的返回类型、名称、参数列表和方法体

D. 用final修饰的变量,在程序中可对这个变量的值进行更改

**Java语言的类间的继承关系是(B)。

A. 多重的

B. 单重的

C. 线程的

D. 不能继承

**下列有关子类继承父类构造函数的描述正确的是(C)。

A. 创建子类的对象时,先调用子类自己的构造函数,然后调用父类的构造函数

B. 子类无条件地继承父类不含参数的构造函数

C. 子类必须通过super关键字调用父类的构造函数

D. 子类无法继承父类的构造函数

第四部分数组、字符串、向量和哈希表

**下面关于向量的描述正确的是(ACD)

A、向量在功能上与数组类似,只是其元素个数可以改变,并且向量元素必须是引用类型;

B、他们都有成员域实际元素个数size和容量capacty;

C、数组的存储大小不能改变,而向量的存储能力可以改变;

D、数组的容量成员为length,而向量的容量为capacity。

**下面正确声明一个一维数组的是(AB)。

A、String [] a

B、String a[]

C、char a[][]

D、String a[10]

**执行完以下代码int [ ] x = new int[10];后,以下哪项说明是正确的(A)A.x[9]为0 B.x[9]未定义C.x[10]为0 D.x[0]为空

**关于以下程序段,正确的说法是( C )

1.String s1=“a”+“b”;

2.String s2=new String(s1);

3.if(s1= =s2)

4.System.out.println(“= = is succeeded”);

5.if (s1.equals(s2))

6.System.out.println(“.equa ls() is succeeded”);

A.行4与行6都将执行B.行4执行,行6不执行

C.行6执行,行4不执行C.行4、行6都不执行

**有整型数组:int[] x={2,33,88,5,10};, 则调用方法Arrays.sort(x) 后,数组x中的元素值依次是(B)。

A、88331052

B、25103388

C、88102335

D、53321088

**下列数组初始化形式正确的是(C)。

A. int t1[][]={{1,2},{3,4},{5,6}};

B. int t2[][]={1,2,3,4,5,6};

C. int t3[3][2]={1,2,3,4,5,6};

D. int t4[][]; t4={1,2,3,4,5,6};

**关于以下程序段,正确的说法是( C )

1.String s1=”abc”+”def”;

2.String s2=new String(s1);

3.if(s1= =s2)

4.System.out.println(“= = succeeded”);

5.if (s1.equals(s2))

6.System.out.println(“.equals() succeeded”);

A、行4与行6都将执行

B、行4执行,行6不执行

C、行6执行,行4不执行C、行4、行6都不执行

**下面的程序段执行后输出的结果是(c)。

StringBuffer buf=new StringBuffer("China2008");

buf.insert(5,"@");

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

A、China2008@

B、@China2008

C、China@2008

D、China#2008

**关于以下application的说明,正确的是( C )

1.class StaticStuff

2.{

3.static int x=10;

4.static { x+=5;}

5.public static void main(String args[ ])

6.{

7.System.out.println(“x=” + x);

8.}

9.static { x/=3;}

10. }

A、4行与9行不能通过编译,因为缺少方法名和返回类型

B、9行不能通过编译,因为只能有一个静态初始化器

C、编译通过,执行结果为:x=5

D、编译通过,执行结果为:x=3

** String或StringBuffer类的对象在调用以下哪个方法时其自身会发生更改?(D)

A)String类的charAt()方法。

B)String类的toUpperCase()方法。

C)String类的replace()方法。

D)StringBuffer类的reverse ()方法。

E)StringBuffer类的length ()方法。

**阅读以下代码:

import java.io.*;

import java.util.*;

public class foo{

public static void main (String[] args){

String s;

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

}

}

输出结果应该是:( C )

A.代码得到编译,并输出“s=”

B.代码得到编译,并输出“s=null”

C.由于String s没有初始化,代码不能编译通过

D.代码得到编译,但捕获到NullPointException异常

**以下关于abstract的说法,正确的是(D)。

A、abstract只能修饰类

B、abstract只能修饰方法

C、abstract类中必须有abstract方法

D、abstarct方法所在的类必须用abstract修饰

**写出以下程序的运行结果。//结果为:1234

public class ChangeStrDemo {

public static void changestr(String str){

str="welcome";

}

public static void main(String[] args) {

String str="1234";

changestr(str);

System.out.println(str);

}

}

**写出以下程序的运行结果。//结果为:in Second class

class First{

public First(){

aMethod(); }

public void aMethod(){

System.out.println(“in First class”);}

}

public class Second extends First{

public void aMethod(){

System.out.println(“in Second class”);} public static void main(String[ ] args){

new Second( ); }

}

**写出以下程序的运行结果。//结果为:abdcbdcb public class FooDemo{

static boolean foo(char c) {

System.out.print(c);

return true;

}

public static void main(String[] args ) {

int i =0;

for ( foo(’a’);foo(’b’)&&(i<2);foo(’c’)){

i++ ;

foo(’d’);

}

}

}

**关于以下程序代码的说明正确的是( D )1.class HasStatic{

2.private static int x=100;

3.public static void main(String args[ ]){ 4.HasStatic hs1=new HasStatic( ); 5.hs1.x++;

6.HasStatic hs2=new HasStatic( ); 7.hs2.x++;

8.hs1=new HasStatic( );

9.hs1.x++;

10.HasStatic.x- -;

11.System.out.println(“x=”+x);

12.}

13.}

A、5行不能通过编译,因为引用了私有静态变量

B、10行不能通过编译,因为x是私有静态变量

C、程序通过编译,输出结果为:x=103

D、程序通过编译,输出结果为:x=102

**写出以下程序的运行结果。//结果为:int

class OverloadDemo{

void testOverload( int i ){

System.out.println(“int”); }

void testOverload(String s){

System.out.println(“String”); }

public static void main(String args[ ]){

OverloadDemo a=new OverloadDemo ( );

char ch=’x’;

a.testOverload(ch); }

}

第五部分泛型和枚举

**下面关于泛型描述正确的有(ABC)

A、通过泛型,可以提供程序代码的复用性;

B、应用泛型可以减少数据的类型转换,可以提高代码运行效率;

C、泛型是Java语言的新特征;

D、泛型是Java语言的新数据类型。

**下面关于泛型和枚举的描述正确的有(ABC)

A、通过泛型,可以提供程序代码的复用性;

B、通过枚举类型,可以定义一些枚举常量,在一定程度上增加程序代码的可读性;

C、泛型和枚举内容是Java语言的新特征;

D、泛型和枚举是Java语言的新数据类型;

第六部分异常处理

**异常包含下列哪些内容?(B)

A)程序中的语法错误

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

C)程序的编译错误

D)程序事先定义好的可能出现的意外情况

**下列常见的系统定义的异常中,哪个是输入、输出异常?(B)

A、ClassNotFoundException

B、IOException

C、FileNotFoundException

D、UnknownHostException

**Java应用程序处理异常的方式有捕捉异常方式和转移异常方式。

**类Test1、Test2定义如下:

1.public class Test1

2.{ public float aMethod(float a,float b)throws

3.IOException { }

4.}

5.public class Test2 extends Test1{

6.

7.}

将以下哪种方法插入行6是不合法的。( C )

A、float aMethod(float a,float b){ }

B、public int aMethod(int a,int b)throws Exception{ }

C、public float aMethod(float p,float q){ }

D、public int aMethod(int a,int b)throws IOException{ }

**在代码中使用catch(Exception e)的好处是(B)。

A. 只会捕获个别类型的异常

B. 捕获try块中产生的所有类型的异常

C. 忽略一些异常

D. 执行一些程序

第七部分文件与数据流

** Character流与Byte流的区别是(C)

A、每次读入的字节数不同

B、前者带有缓冲,后者没有

C、前者是块读写,后者是字节读写

D、二者没有区别,可以互换使用

**创建一个向文件"file.txt"追加内容的输出流对象的语句有(CE)。

A. OutputStream out=new FileOutputStream("file.txt");

B. OutputStream out=new FileOutputStream("file.txt", "append");

C. FileOutputStream out=new FileOutputStream("file.txt", true);

D. FileOutputStream out=new FileOutputStream(new file("file.txt"));

E. OutputStream out=new FileOutputStream(new File("file.txt"),true);

**编写一个Java应用程序,文件名为Folder.java,编译后执行结果如下图所示,实现指定文件夹下目录和文件的文本形式的树状结构显示。要求:

1.输入:java Folder,显示当前文件夹下的目录和文件的文本形式树状显示;

2.输入:java Folder C:\test>,显示C:\test文件夹下的目录和文件的文本形式树状显示;

(C:\test可以为任意文件夹路径名)

3.输入:java Folder add aa,在当前文件夹下面添加一个子目录(子目录名为:aa),同时显示当前文件夹下的最新目录和文件的文本形式树状显示;

4.输入:java Folder del aa,在当前文件夹下面删除一个子目录(子目录名为:aa),同时显示当前文件夹下的最新目录和文件的文本形式树状显示;(30分)

**下列选项中属于过滤流FilterInputStream的子类的是(A)。

A. DataInputStream

B. DataOutputStream

C. PrintStream

D. BufferedOutputStream

第八部分Swing图形用户界面程序设计

**监听事件和处理事件(B)

A、都由Listener完成

B、都由相应事件Listener处登记过的构件完成

C、由Listener和构件分别完成

D、由Listener和窗口分别完成

**关于以下的组件的接口,正确的是(B)。

A、TextArea组件可实现的接口是ActionListener

B、List组件可实现的接口,除了ItemListener,还可以是ActionListener

C、Choice组件可实现的接口是ActionListener

D、以上都不对

**下列哪个是不属于容器的组件?(B)

A、JFrame

B、JButton

C、JPanel

D、JApplet

**下列哪个布局管理器中的按钮位置有可能会根据JFrame的大小改变而改变?(D)

A、BorderLayout

B、CardLayout

C、GridLayout

D、FlowLayout

**以下说法哪项是正确的(A)

1.class MyListener

2.extends MouseAdapter implements MouseListener{

3.public void mouseEntered(MouseEvent mev)

4.{ System.out.println("Mouse entered."); }

5.}

A、以上代码可通过编译

B、不能通过编译,因为没有实现MouseListener接口中的所有方法

C、不能通过编译,因为类头定义不能分行

D、能通过编译,若组件用该类作为Mouse的监听者并且接收了mouse-exited事件,则在执行过程中会抛出异常

**关于以下程序段的说法,类包含不考虑情况下,正确的是( A )

1.class MyListener implements

2.ActionListener,ItemListener{

3.public void actionPerformed(ActionEvent ae){

4.System.out.println("Action");}

5.public void itemStateChanged(ItemEvent ie){

6.System.out.println("Item");

7.}

8.}

A、可通过编译

B、第2行产生编译错误

C、第3行产生编译错误

D、第5行产生编译错误

2、 **编写一个Java GUI 应用程序,窗口标题为“GridLayout ”,窗口布局如下图A 所示,

在图A 窗口中单击任意一个Button ,网格的划分方式会变化为图B ;在图B 窗口中单击任意一个Button ,网格的划分方式会变化为图A 。(25分)

图A

图B

**阅读下列程序

import java.awt.Button;

import java.awt.GridLayout;

import java.awt.Panel;

import javax.swing.*;

public class X extends JFrame{

public X(){

setLayout(new GridLayout(2,2));

JPanel p1=new JPanel();

add(p1);

JButton b1=new JButton("One");

p1.add(b1);

JPanel p2=new JPanel();

add(p2);

JButton b2=new JButton("Two");

p2.add(b2);

JButton b3=new JButton("Three");

p2.add(b3);

JButton b4=new JButton("Four");

add(b4);

}

public static void main(String[] args){

X x=new X();

x.pack();

x.setV isible(true);

}

}

当frame 改变大小时, 下面正确的描述为(D )

A) Button "One" 改变高度

B)Button "Two"改变高度

C)Button "Three" 改变宽度

D)Button "Four"改变高度和宽度

**假设你正在为应用系统设计一个Java图形用户界面(GUI),需要能输入多行文本信息,下列组件中最能满足这个要求的是(A)。

A. TextArea

B. Label

C. TextField

D. Checkbox

**下列Java常见事件类中哪个是鼠标事件类?(C)

A、InputEvent

B、KeyEvent

C、MouseEvent

D、WindowEvent

**下面关于布局管理器说法正确的是(ABCD)。

A、布局管理器用来管理组件放置在容器中的位置和大小。

B、每个容器都有一个布局管理器。

C、使用布局管理器可以使JA V A生成的图形用户界面具有平台无关性。

D、布局管理器LayoutManager本身是一个接口,通常使用的是实现了该接口的类。**下面关于事件监听的说明,哪一个语句是正确的?(D)

A、所有组件,都不允许附加多个监听器

B、如果多个监听器加在一个组件上,那么事件只会触发一个监听器

C、组件不允许附加多个监听器

D、监听器机制允许按照我们的需要,任意调用addXxxxListener 方法多次,而且没有次序区别

**在Java中不存在的布局方式是(D)。

A. 流布局(FlowLayout)

B. 边界布局(BorderLayout)

C. 网络布局(GridLayout)

D. 中央布局(CenterLayout)

第九部分小应用程序(Applet)

**下列方法中,属于Applet基本方法的有(ACD)。

A. init()

B. run()

C. stop()

D. start()

E、main()

** Applet可以做下列哪些操作?(D)

A.读取客户端文件B.在客户端主机上创建新文件

C.在客户端装载程序库D.读取客户端部分系统变量

**下面是一个Java程序片段:

public void paint (Graphics g)

{

int x = 10;

int y = 20;

paintPicture( g, x, y);

}

public void paintPicture(Graphics g, int a, int b)

{

g.setColor(Color.red);

// more code follows

}

当执行这段代码时,paintPicture方法中参数"a"的值将是什么?(A)

A、10

B、0

C、20

D、这段代码不能够编译。这是一个错误,因为从来没有声明参数"a"和给它赋值

**在Applet的关键方法中,下列哪个方法是关闭浏览器以释放Applet占用的所有资源?(D)

A、init()

B、start()

C、paint()

D、destroy()

**当浏览器的用户离开applet所在的HTML页时都会调用方法(A)。

A. stop()

B. init ()

C. paint()

D. repaint()

**当浏览器重新返回Applet所在页面时,将调用Applet类的方法是(A)。

A. start()

B. init()

C. stop()

D. destroy()

**分析下面的HTML部分代码:

width = 60

height = 60>

下列哪一项可以替代文件名以正确装载运行Hello 类的小程序? (B)

A、"Hello.bytecode"

B 、"Hello.class"

C 、"Hello.applet"

D 、"Hello.java"

**paint()方法使用哪种类型的参数? (A)

A、Graphics

B、Graphics2D

C、String

D、Color

**浏览器禁止Applet执行下列哪些操作?(ABCD)

A、在运行时调用其它程序。

B、文件读写操作。

C、装载动态连接库和调用任何本地方法。

D、试图打开一个socket进行网络通信,但是所连接的主机并不是提供Applet的主机。**下列说法正确的是(C)。

A. java Applet 程序必须在浏览器中执行

B. java 应用程序必须在浏览器里执行

C. java Applet 程序不一定在浏览器中执行

D. java 应用程序可以在浏览器中执行

第十部分编程规范

**制定程序编写规范的目标是(ABC)

A、尽量使程序代码的风格一致;

B、增强程序的可读性;

C、缩短程序编写和维护的时间;

D、提高程序的运行效率;

**程序编写规范主要包含命名规范、排版规范、语句规范和文件组织规范等四个部分的内容。

**包的名称通常全部采用小写字母,如果包名包含多个单词,则在单词之间用”.”分隔,常常在包名前加个前缀,它是单位网站域名的逆序。

**命名规范的主要内容有(ABCD)

A、包的名称通常全部采用小写字母;

B、类名或接口名或枚举名一般建议使用名词或名词性词组;

C、变量名一般建议使用名词或名词性词组,变量名的首写字母一般是小写字母,中间单词的首字母大写;

D、常量名一般全部采用大写字母,如果一个常量由多个单词组成,则单词之间一般用下划线“_”分隔。;

**文件组织规范一般每个Java源程序文件通常由头部注释、包声明语句和包导入语句、类或接口或枚举的定义三部分组成。

**对Java源文件通过比较规范的文档注释后,可以通过应用工具自动生成程序的在线帮助文档,其使用的工具是(D)

A、javac

B、java

C、jar

D、javadoc

第十一部分综合

**说明final, finally, finalize的区别?

** Abstract Class和Interface有什么区别?

**下面哪些说法是错误的?(ABCD)

A、用New运算符来创建的对象,在JVM退出时才会被做垃圾回收。

B、判断一个对象是否可以被垃圾回收的条件为是否还有对该对象的引用。

C、java函数的参数传递规定,所有的原始类型(如整数)和对象(使用new来创建的)

都为地址传递。

D、java函数支持重载,但函数必须至少有一个参数或返回值的类型不同或个数不同。**编写一个Java应用程序,对于给定的一个字符串的集合,格式如:

{aaa bbb ccc},{bbb ddd},{eee fff},{ggg},{ddd hhh}

要求将其中交集不为空的集合合并,要求合并完成后的集合之间无交集,例如上例应输出:

{aaa bbb ccc ddd hhh},{eee fff},{ggg}

请将制作好的源文件保存为“t1.java”。(本题60分,要求1占20分,要求2占35分,要求3占5分)

(1)分析问题,描述你解决这个问题的思路、处理流程,以及算法复杂度。

(2)编程实现题目要求的集合合并。

(3)描述可能的改进(改进的方向如效果,算法复杂度,性能等等)。

JAVA程序设计期末考试题(多套含答案)

《JA V A程序设计》期末考试试题(五) 一、单选题 1、当某一线程正处于休眠状态,而另一个线程用Thread 类中的interrupt() 方法中断它时,抛出的异常类型是()。 A) IOException B) RuntimeException C) InterruptedException D) ClassNotFoundException 2、下面的程序段的功能是( )。 File file1=new File("d:\\xxx\\yyy\\zzz"); file1.mkdirs(); A)在当前目录下生成子目录:\xxx\yyy\zzz B)生成目录:e:\xxx\yyy\zzz C)在当前目录下生成文件xxx.yyy.zzz D)以上说法都不对 3、应用程序的main方法中有以下语句,则输出的结果是( )。 String s = "xxxxxxxxxxxxxxx#123#456#zzzzz"; int n = s.indexOf("#"); int k = s.indexOf("#", n+1); String s2 = s.substring(n+1, k); System.out.println(s2); A) 123456 B) 123 C) xxxxxxxxxxxxxxx D) zzzzz 4、关于下面的程序Test.java说法正确的是( )。 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)程序有编译错误 5、应用程序的main方法中有以下语句,则输出的结果是( )。

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语言程序设计》期末考试试题及答案

《JA V A语言程序设计》期末考试试题及答案3 一、单项选择题 1、如下哪个是Java中的标识符() A、public B、super C、3number D、width 2、如下哪个是Java中的标识符( ) A、fieldname B、super C、3number D、#number 3、已知如下定义:String s = "story"; 下面哪个语句不是合法的( ) A、s += "books"; B、s = s + 100; C、int len = s.length; D、String t = s + “abc”; 4、如下哪个是Java中有效的关键字() A、name B、hello C、false D、good 5、下面的代码段执行之后count的值是什么( ) int count = 1; for (int i = 1; i <= 5; i++) { count += i; } System.out.println(count); A、5 B、1 C、15 D、16 6、定义一个类,必须使用的关键字是( ) A、public B、class C、interface D、static 7、定义一个接口必须使用的关键字是() A、public B、class C、interface D、static 8、如果容器组件p的布局是BorderLayout,则在p的下边中添加一个按钮b,应该使用的语句是() A、p.add(b); B、p.add(b,"North"); C、p.add(b,"South"); D、b.add(p,"North"); 9、声明并创建一个按钮对象b,应该使用的语句是() A、Button b=new Button(); B、button b=new button();

Java语言程序设计二级考试模拟试卷

Java语言程序设计二级考试模拟试卷一 (考试时间90分钟,满分100分) 一、选择题(1~20题每题2分,20~30题每题3分,计70分) 在下列各题的A、B、C、D、四个选项中,只有一个选项是确定的,请将正确的选项涂写在答题卡相应位置上,答在试卷上不得分。 1、下列叙述中正确的是()。 A、线性表是线性结构 B、栈和队列是非线性结构 C、线性链表是非线性结构 D、二叉树是线性结构 2、下列关于队列的叙述中正确的是()。 A、在队列中只能插入数据 B、在队列中只能删除数据 C、队列是先进先出的线性表 D、队列是先进后出的线性表 3、设有下列二叉树: 对此二叉树前遍历的结果是()。 A、ABCDEF B、DBEAFC C、ABDECF D、DEBFCA 4、设树T的度为4,其中度为1、2、3、4的结点个数分别是4,2,1,1。则T中的叶子结点数是()。 A、8 B、7 C、6 D、5 5、结构化程序设计主要强调的是()。 A、程序的规模 B、程序的易读性 C、程序的执行效率 D、程序的可移植性 6、下面对对象概念描述错误的是()。 A、任何对象都必须有继承性 B、对象是属性和方法的封装体 C、对象间的通讯靠消息传递 D、操作是对象的动态属性 7、在软件测试中,以发现各模块内部可能存在的各种错误为目的的测试是()。 A、集成测试 B、单元测试 C、黑盒测试 D、白盒测试 8、软件需求分析阶段的工作,可以分为四个方面,需求获取、需求分析、编写需求规格说明书以及()。 A、阶段性报告 B、需求评审 C、总结 D、信息隐藏 9、在关系数据库中,用来表示实体之间联系的是()。 A、树结构 B、网结构 C、线性表 D、二维表 10、在关系数据库中,当数据的存储结构改变时,其逻辑结构可以不变,因次,基于逻辑结构的应用程

《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程序设计习题附答案(一)

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程序设计期末考试试题

Java程序设计期末考试试题、试卷、习题A卷 一、选择题。本题共20小题,每题2分,满分40 分。 1、在浏览器中执行applet 程序,以下选项中的哪个方法将被最先执行……… () A)init() B)start() C)destroy() D)stop() 2、有以下方法的定义,请选择该方法的返回类型() ReturnType method(byte x, double y) { return (short)x/y*2; } A)byte B)short C)int D)double 3、以下哪项可能包含菜单条()。 A)Panel B)Frame C)Applet D)Dialog 4、Java application中的主类需包含main方法,main方法的返回类型是什么?()A)int B)float C)double D)void 5、Java application中的主类需包含main方法,以下哪项是main方法的正确形参?( ) A)String args B)String ar[] C)Char arg D)StringBuffer args[] 6、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。 A). java B) .class C) . html D) .exe 7、设int型变量x = 1 , y = 2 , z = 3,则表达式y+=z--/x++ 的值是( )。 A)3 B)3. 5 C)4 D)5 8、不允许作为类及类成员的访问控制符的是( )。 A)public B)private C)static D)protected 9、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。 A)static void method( ) B)public void method( ) C)final void method( ) D)abstract void method( ) 10、以下哪一个不是JAVA的标准数据流( )。 A)标准输出数据流B)标准输入数据流C)标准错误数据流D)标准运算数据流 11.设有下面两个赋值语句:( ) a = Integer.parseInt(“123”); b = Integer.valueOf(“123”).intValue(); 下述说法正确的是()。 A)、a是整数类型变量,b是整数类对象。B)、a是整数类对象,b是整数类型变量。C)、a和b都是整数类对象并且值相等。D)、a和b都是整数类型变量并且值相等。 12、下列代表十六进制整数的是( ) A)0123 B)1900 C)fa00 D)0xa2

java程序设计模拟试题四

《Java 程序设计》模拟试题四 一、选择题(每小题2分,共20分) 1. 以下哪个是合法的标识符? ( C ) A. 7star B. else C. my$ D. super 2. 设有对象obj 具有属性a 则访问该属性的方法为( A )。 A. obj.a B. a.obj() C. a.obj D. obj.a() 3. 下列关于关键字this 和super 的说法正确的是( C )。 A. this 是调用父类的方法和变量 B. super 是调用本类中的方法 C. super 是调用父类的方法和变量 D. 没有区别 4. 以下关于重载(overload )的定义哪个正确?( B ) A.在一个类中,定义了多个具有相同名字的方法,但这些方法有不同的输出参数。 B.在一个类中,定义了多个具有相同名字的方法,但这些方法有不同的输入参数。 C.在一个类中,定义了多个具有相同名字的方法,并且这些方法有相同的输入参数。 D.在一个方法体中定义了多行代码。 5. 有如下代码段: int i=2; int j=3; if((i==2)||(j++==3)) i++; if((j==4)||(i++==3)) j++; System.out.printf("i="+i+"j="+j); 该程序运行的结果为: ( C )。 A .i=4,j=4 B.i=3,j=5 C .i=4,j=5 D.以上都不是 6. Java 程序用以下哪个命令可编译源文件? ( D ) A. Java B. appletviewer C. Javadoc D. Javac 7. 以下说法正确的个数为 ( B )。 ①构造方法中this 语句必须放在第一句; ②构造方法中super 语句不一定放在第一句; ③final 修饰的变量只能赋值一次; ④static 修饰的变量在该对象的一个实例中被修改,在另一个实例中也可以取得该变量的新值。 A. 1 B. 2 C. 3 D. 4 8. 下列修饰词,可以用来定义接口中方法的为 ( C )。 A. private B. protected C. public D.以上都不是 9. 关于继承的说法正确的是( B )。 A.子类将继承父类所有的属性和方法。 B.子类将继承父类的非私有属性和方法。 C.子类只继承父类public 方法和属性 D.子类只继承父类的方法,而不继承属性 10. 下列关于Java 程序中数组的使用说法正确的是( A )。 A.数组必须在使用前定义 B.同一个数组中的元素类型必须不同 C.数组是一种特殊的变量不需在使用前声明 D.数组的元素不可以是数组 评分标准:本题为单项选择题,每小题2分,共10道小题,共20分;每小题选对给2分,选错、多选、不选不给分也不扣分。 二、填空题(每空1分,共10分) 1. Java 的特点有: 简单性、可靠性和安全性、面向对象、平台无关和解释执行、分布式、多线 程等 (不少于4条)。 评分标准:只要写出四条即可给1分,不写或少于四条不给分,也不扣分。 2. Java 的注释有以下三种: 单行注释(//)、多行注释(/* */)、文档注释(/** */) 。 评分标准:本题答案不唯一,只要写出3条即可给1分,不写或少于3不给分,也不扣分。备注:不写汉字,只写括号中的符号也算正确,或者汉字和符号的组合也对。 3. 建立文件”file.txt ”的字节输入流的语句是 FileInputStream in=new FileInputStream (”file.txt ”) 。 评分标准:本题正确给1分,不正确或不写、错误不给分也不扣分。备注:本题答案不唯一,只要是表达出使用字节流类进行文件的字节输入即可,变量名可以不同,只要符合标识符的定义即可。 4. Java 中所有类都是类 Object 的子类。 评分标准:本题正确给1分,不正确或不写、错误不给分也不扣分。备注:首字母必须大写,否则算错不给分,写对象也算正确。 5. Throwable 的两个直接子类是 Error 、 Exception ,在方法头部声明方法可能会 抛出异常使用 throws 关键字。 评分标准:本题正确给3分,不正确或不写、错误不给分也不扣分。备注:Error 、Exception 的首字母必须大写,否则算错不给分;写出对应的汉语也算正确。 6. abastract 方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在 抽象类中定义。 final 方法是不能被当前类的子类重新定义的方法。 评分标准:本题正确给2分,不正确或不写、错误不给分也不扣分。备注:写出对应的汉语也算正确,例如,抽象和最终。 7. 按照功能组织类和接口的名称空间称为 package 。 评分标准:本题正确给1分,不正确或不写、错误不给分也不扣分。备注:写出对应的汉语也算正确,例如,包。 三、简答题(每小题5分,共20分) 1. 有如下程序: Moveable.java 文件中有如下代码 interface Moveable{ void move(int x,int y); void jump(int x, int y); } Monkey.java 中如下代码: class Monkey implements Moveable{ public void jump(int x,int y){ System.out.printf(“I am jumping from %d to %d ”,x,y); } 专业班级: 姓名: 学号: …………………………密………………………………封………………………………线…………………………

非常经典的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程序设计期末考试题

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程序设计预赛模拟题-2

一、单选题 1.Java JDK中调试器的命令是( )。 A. javac B. java C. jdb D. javah 2.运行jar文件中class文件需要在java命令后面加的参数为()。 A. -cp B. -g C. -d D. -verbose 3.下面哪项在java中是不合法的标识符?() A. $user B. point C. You&me D. _endline 4.下列哪一项不是Java保留字?() A. sizeof B. super C. abstract D. break 5.下列哪个布局管理器中的按钮位置有可能会根据Frame的大小改变而改变? () A. BorderLayout B. CardLayout C. GridLayout D. FlowLayout 6.下面哪些java语句会导致无限循环?( ) I. while (true) i = 0; II. while (false) i = 1; III. while (!false) i = 0; A. III only B. I and III only C. I only D. I, II and III 7.下面是Example.java文件的完整代码,请找出会产生编译错误的行()。 1) class BaseClass { 2) public String str; 3) public BaseClass(){ 4) System.out.println(“ok”);} 5) public BaseClass(String s){ 6) str=s;}} 7) class SubClass extends BaseClass{ 8) } 9) public class Example{ 10) public void method(){ 11) SubClass s=new SubClass(“hello”); 12) BaseClass b=new BaseClass(“world”); 13) } 14) } A. 7 B. 10 C. 11 D.12 8.可以在下面代码段point x处写入的是()。 //point x public class Interesting{ //do something } A. String str; B. static int PI=3.14; C. public class MyClass{//do other thing…} D. import java.awt.*; 9.下面关于事件监听的说明,哪一个语句是正确的?() A. 所有组件,都不允许附加多个监听器 B. 如果多个监听器加在一个组件上,那么事件只会触发一个监听器 C. 组件不允许附加多个监听器

大学《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程序设计》期末考试试题_(一)

《JA V A程序设计》期末考试试题(一) 一、单选择题 1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。 A. java B. .class C. html D. .exe 2、设x = 1 , y = 2 , z = 3,则表达式y+=z--/++x 的值是( )。 A. 3 B. 3. 5 C. 4 D. 5 3、不允许作为类及类成员的访问控制符的是( )。 A. public B. private C. static D. protected 4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。 A. static void method( ) B. public void method( ) C. final void method( ) D. abstract void method( ) 二、填空题 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。

JAVA程序设计题库

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. 两个

相关文档
最新文档