JAVA期末试题及答案

JAVA期末试题及答案
JAVA期末试题及答案

AVA期末试题及答案

1.使用Java语言编写的源程序保存时的文件扩展名是()。

(A).class (B).java(C).cpp (D).txt

2.设int a=-2,则表达式a>>>3的值为()。

(A)0 (B)3 (C)8(D)-1

3.设有数组的定义int[] a = new int[3],则下面对数组元素的引用错误的是()。

(A)a[0]; (B)a[a.length-1];

(C)a[3]; (D)int i=1; a[i];

4.在类的定义中可以有两个同名函数,这种现象称为函数()。

(A)封装(B)继承

(C)覆盖(D)重载

5.在类的定义中构造函数的作用是()。

(A)保护成员变量(B)读取类的成员变量

(C)描述类的特征(D)初始化成员变量

6.下面关键字中,哪一个不是用于异常处理语句()。

(A)try (B)break

(C)catch (D)finally

7.类与对象的关系是()。

(A)类是对象的抽象(B)对象是类的抽象

(C)对象是类的子类(D)类是对象的具体实例

8.下面哪一个是Java中不合法的标识符()。

(A)$persons (B)twoNum

(C)_myVar (D)*point

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

(A)static void method( )

(B)public void method( )

(C)final void method( )

(D)abstract void method( )

10.欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的()。

(A)ArrayList myList=new Object( )

(B)List myList=new ArrayList( )

(C)ArrayList myList=new List( )

(D)List myList=new List( )

11.Java源文件和编译后的文件扩展名分别为()

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

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

12.在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( )方法来完成一些画图操作。

(A) start( ) (B) stop( )

(C) init( ) (D) paint( )

13.对于一个Java源文件,import, class定义以及package正确的顺序是:

(A) package,import,class (B) class,import,package

(C) import,package,class (D) package,class,import

14.下面哪个是非法的:

(A) int I = 32; (B) float f = 45.0;

(C) double d = 45.0; (D) char c = ‘u’;//符号错

15.Java语言使用的字符码集是

(A) ASCII (B) BCD

(C) DCB (D) Unicode

16. 如果一个类的成员变量只能在所在类中使用,则该成员变量必须使用的修饰是

(A) public (B) protected

(C) private (D) static

17.下面关于main方法说明正确的是

(A) public main(String args[ ])

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

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

(D) void main()

18.哪个关键字可以对对象加互斥锁?( )

(A) transient (B) synchronized

(C) serialize (D) static

19.关于抽象方法的说法正确的是( )

(A)可以有方法体 (B) 可以出现在非抽象类中

(C) 是没有方法体的方法(D) 抽象类中的方法都是抽象方法

20.java.io包的File类是

(A)字符流类(B) 字节流类

(C) 对象流类 (D) 非流类

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

A、String args

B、String args[]

C、Char arg

D、StringBuffer args[]

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

int x=-3; int y=-10;

System.out.println(y%x);

A、-1

B、2

C、1

D、3

23.以下关于继承的叙述正确的是()。

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

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

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

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

24. 若有定义:byte[] x={11,22,33,-66};

其中0≤k≤3,则对x数组元素错误的引用是()

A)x[5-3]

B)x[k]

C)x[k+5]

D)x[0]

25.paint()方法使用哪种类型的参数? ()

A、Graphics

B、Graphics2D

C、String

D、Color

26.以下哪个不是Java的原始数据类型()

A、int

B、Boolean

C、float

D、char

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

A)隐藏

B)重写

C)重载

D) Java不支持此特性

28.以下有关构造方法的说法,正确的是:()

A.一个类的构造方法可以有多个

B.构造方法在类定义时被调用

C.构造方法只能由对象中的其它方法调用。

D.构造方法可以和类同名,也可以和类名不同

29.在浏览器中执行applet 程序,以下选项中的哪个方法将被最先执行()。

A、init()

B、start()

C、destroy()

D、stop()

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

public class Person{

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

public static void main(String a[])

{

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

}

A、编译时将产生错误

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

C、输出零

D、输出空

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

ReturnType method(byte x, double y)

{

return (short)x/y*2;

}

A、byte

B、short

C、int

D、double

32.下列类定义中哪些是合法的抽象类的定义?()

A、abstract Animal{abstract void growl();}

B、class abstract Animal{abstract void growl();}

C、abstract class Animal{abstract void growl();}

D、abstract class Animal{abstract void growl(){System.out.println(“growl”);};}

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

1.

2.public class Interesting{

3.//do sth

4. }

A、import java.awt.*;

B、package mypackage;

C、class OtherClass{ }

D、public class MyClass{ }

34. 设有下面两个赋值语句:

a = Integer.parseInt(“12”);

b = Integer.valueOf(“12”).intValue();

下述说法正确的是()。

A、a是整数类型变量,b是整数类对象。

B、a是整数类对象,b是整数类型变量。

C、a和b都是整数类对象并且值相等。

D、a和b都是整数类型变量并且值相等。

35.在编写Java Applet程序时,需在程序的开头写上( )语句。

A、import java.awt.* ;

B、import java.applet.Applet ;

C、import java.io.* ;

D、import java.awt.Graphics ;

36.下列哪一项不属于Swing的顶层容器?()

A)JApplet B)JTree C)JDialog D)JFrame

37. 为了使包ch4在当前程序中可见,可以使用的语句是()。

A)import ch4.*; B)package ch4.*;

C)ch4 import; D)ch4 package;

38. 请问所有的异常类皆继承哪一个类?()。

A)java.io.Exception B)https://www.360docs.net/doc/773680551.html,ng.Throwable

C)https://www.360docs.net/doc/773680551.html,ng.Exception D)https://www.360docs.net/doc/773680551.html,ng.Error

39.进行Java基本的GUI设计需要用到的包是()。

A)java.io B)java.sql C)java.awt D)java.rmi

40. 当点击鼠标或者拖动鼠标时,触发的事件是下列的哪一个?()

A)KeyEvent B)ActionEvent C)ItemEvent D)MouseEvent

填空题:

1.数组x定义:String x[ ][ ]=new int[3][2]; x[0 ][0 ]=”abc”, x[0 ][1]=”12345”;

则 x.length 的值为______2___,x[0][1].length( ) 的值为__5___。

2、Java语言的变量由变量名、_修饰符_、变量属性、_初值___组成。

3、当程序中需要抛出异常时,应该使用_catch_子句,当需要在方法中声明可能抛出的异常类型,应该使用_______子句。

4、java.applet包中的________类定义了Applet与其运行环境之间的一个标准接口。

5、Java语言中提供的GUI功能主要由java.awt包和_java.swing_包中的类和接口实现。

6、Java源程序文件和字节码文件的扩展名分别为_.java___和__.class___。

7、Java语言的类型检查机制要求对于没有返回值的方法,在其前面必须加___void___进行说明。

8、类是Java语言的一种_______数据类型。

9、在Java语言中,所有的对象均通过___________运算符分配内存,并对内存进行自动管理。

10、每个Java Application程序可以包括许多方法,但是必须有且只能有一个______方法,统一格式为__________,它是程序执行的入口。

11、若要在程序中定义一个公用的int型的类成员变量MAX_LENGTH,且该变量的值保持常数值1000,则定义该变量的语

句是_____________________。

12、子类必须通过_super_关键字调用父类有参数的构造函数。

13、在Java语言中,所有的类都是类__Object__的子类。

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

15、如果在Java程序中,需要使用java.util包中的所有类,则应该在程序开始处加上语句_import java.util.*_。

16、下列程序的运行结果是__01234_______________

public class ex2 {

public static void main(String[] args)

{

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

{

if(cnt==5)

break;

System.out.print(cnt);

}}}

17、下列程序的运行结果是______4_________

import java.io.*;

public class ATest{

public static void main(String args[])

{

SubClass sb = new SubClass( );

System.out.println(sb.fun( ));

}}

class SuperClass{

int a =24 , b =5 ;

}

class SubClass extends SuperClass

{

int fun( )

{

return a%b;

}

}

18、分析下列程序,填上空白处的语句

class point //定义坐标类

{ int x,y;

test(int a,int b)

{x=a;y=b;}

}

class rec_extends point __________//定义长方形类

{

int length,width;

rec(int a1,int b1,int l,int w)

{super(a1,b1);

length=l;width=w;

}}

class test

{public static void main(String args[])

{

___test r1=new test(“0”, “0”, “10”, “20”)__________________

//定义名为r1的对象同时初始化坐标为0,0,长度为10,宽度为20

r1.print();

}}

19、Java 源文件中最多只能有__________1___________个公共类,其它类的个数不限。

20、在 Java 中所有实现的多维数组,实际上是由一维数组构成的_数组的数组。

21、设 x =15 ,则表达式 ( x + + )/4 的值是___3_______________。

22、___抽象______方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。

23、 ____run()______方法用于定义线程的执行体. _____start()______方法用于启动线程.

24、String str1=”abc”;

String str2=new String(“abc”);

System.out.println(str1==str2);则程序运行后输出结果为:_____fault________

25、Java语言中,有一个类是所有类或接口的父类,这个类的名称是 ____Object______。

26、当启动 Applet 程序时,首先调用的方法是_____________________。

27、Java语言是一种完全的_____________________程序设计语言。

28. 如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是____Applet_____

类的子类并且存储该源程序文件的文件名为。

29. 设 int x = 2 ,则表达式 (x++)/3 的值是_____0_______________。

30. Java提供的访问权限修饰符有4个,即:public、_private、protected和友元。

31. Java中有两种常用的字符串类,一个是String,另一个是_____________________。

32. Java实现多线程的方法有两种,一种方法是通过创建_____________________类的子类实现多线程,另一种方法是定义

一个实现

_____________________接口的类。

33. Java不支持多继承。但它允许一个类同时实现多个__接口____,这就相当于部分实现了多继承。

34. Java源文件中,__________import___________语句位于package语句之后、类定义之前。

35. __OutputStreamWriter__类是OutputStream类的子类,用来处理以文件作为数据输出的数据流。

三、编程题:

1.编写一个输出"Hello World!"的程序,用两种方式实现(Application、Applet)。

2.编写一个Java Application,接收从键盘输入的10个整数,并输出其中的最大、最小以及平均值。要求:将计算功能

定义在一个类中,由主类接收输入,再用数组的方式传递给实现计算的类的方法,再输出结果。

3.编写一个程序,

RealPart : int型,代表复数的实数部分

ImaginPart : int型,代表复数的虚数部分

String ToString( ) : 把当前复数对象的实部、虚部组合成 a+bi 的字符串形式,其中 a 和 b分别为实部和虚部的数据。

4.求10个数中的最大值并输出。

5.建立一个学生类,其中成员变量为学号,姓名,及三门课成绩。另外建立一个包含主方法的类,定义2个学生类的对象,求出这2个学生三门课总分的最高分,并将最高分这个学生的信息输出。

6.编写一个Application,接受用户输入的帐号和密码,给三次输入机会.

7.定义一个圆类circle,它有一个变量radius(半径)、若干个构造函数和一个求圆的面积的方法。在主类test的main()

方法中随机生成一个100以内的整数,通过构造函数的参数传递给radius,调用圆类circle中的方法计算并输出圆的面积。

8.编写Applet程序模拟屏幕保护程序,在屏幕上随机画圆。圆的位置和半径是随机的。50毫秒后再随机画下一个圆,一旦

画满了50个圆,就清除屏幕。然后重新开始画圆。

9.请编写一个实现如下功能的Application:比较从键盘输入的两个整数是否相等,并根据比较结果显示“相等”或“不

相等”。

10.请编写一个Applet,其中包含两个标签(一个用于给出提示信息,另一个用来输出结果)和一个文本框。要求从文本

框中获取用户给出的一个整数,并将该数的绝对值在标签上输出。

11.编写一个Application,利用数组求出”HELLO”,”JAVA””PROGRAM”三个字符串的平均长度。

12.SQL Server 中有一个名为 friends 的表,如下图,利用JDBC编程实现显示表中记录信息。

一:

1、application程序

public class a

{

public static void main(String args[])

{

System.out.println("Hello World!");

}

}

2、applet程序

public class b extends java.applet.Applet

{

public paint(java.awt.Graphics g)

{

g.outstring("Hello World!",10,10);

}

}

二:

private float shibu;

private float xubu;

{

this(0,0);

}

this.shibu=shibu;

this.xubu=xubu;

}

{

ex();

result.shibu=this.shibu+p.shibu;

result.xubu=this.xubu+p.xubu;

System.out.print("加法果为:"+result.shibu+"+"+result.xubu+"i"); }

public static void main(String[] args) {

fushu1.Add(fushu2);

}

}

三:

import https://www.360docs.net/doc/773680551.html,ng.*;

public class COMplex {

int RealPart;

int ImagePart;

COMplex(){

RealPart=0;

ImagePart=0;

}

COMplex(int real,int image){

RealPart=real;

ImagePart=image;

}

COMplex repart = new COMplex();

repart.RealPart=this.RealPart+a.RealPart;

repart.ImagePart=this.ImagePart+a.ImagePart;

return repart;

}

void ToString( ) {

System.out.println(this.RealPart+"+"+this.ImagePart+"i");

}

public static void main(String args[]){

COMplex C1=new COMplex(2,3);

COMplex C2=new COMplex(4,6);

COMplex C3=new COMplex();

// C3.ToString();

}

}

四:

import java.util.Scanner;

public class Test {

public static void main(String args[]){

int num[]=new int[10];

int max;

Scanner scan=new Scanner(System.in); System.out.print("请输入10个数字:");

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

num[i]=scan.nextInt();

}

max=num[0];

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

if(max

}

System.out.println("最大值是"+max);

}

五:

//学生类

public class Student{

private String stu_id;

private String stu_name;

private float math;

private float chinese;

public void setStu_id(String stu_id){

this.stu_id=stu_id;

}

public String getStu_id(){

return stu_id;

}

public void setStu_name(String stu_name){ this.stu_name=stu_name;

}

public String getStu_name(){

return stu_name;

}

public void setMath(float math){

this.math=math;

}

public float getMath(){

return math;

}

public void setChinese(float chinese){

this.chinese=chinese;

}

public float getChinese(){

return chinese;

}

}

public

}

}

//主方法的类

public class Start{

public static void main(String[] args){

Student stu1=new Student();

stu1.setStu_id("No1");

stu1.setStu_name("张三");

stu1.setMath(89.5f);

stu1.setChinese(70f);

stu1.s

Student stu2=new Student();

stu2.setStu_id("No2");

stu2.setStu_name("李四");

stu2.setMath(79.5f);

stu2.setChinese(90f);

float stu2Sum

if(stu1Sum > stu2Sum){

System.out.println ("总分最高分为:"+stu1Sum);

System.out.println ("学号:"+stu1.getStu_id()); System.out.println ("姓名:"+stu1.getStu_name()); System.out.println ("数学:"+stu1.getMath());

System.out.println ("语文:"+stu1.getChinese());

}else if(stu1Sum < stu2Sum){

System.out.println ("总分最高分为:"+stu2Sum);

System.out.println ("学号:"+stu2.getStu_id()); System.out.println ("姓名:"+stu2.getStu_name()); System.out.println ("数学:"+stu2.getMath());

System.out.println ("语文:"+stu2.getChinese());

}else{

System.out.println ("总分一样高为:"+stu1Sum);

System.out.println ("学号:"+stu1.getStu_id()); System.out.println ("姓名:"+stu1.getStu_name()); System.out.println ("数学:"+stu1.getMath());

System.out.println ("语文:"+stu1.getChinese());

System.out.println ("学号:"+stu2.getStu_id()); System.out.println ("姓名:"+stu2.getStu_name()); System.out.println ("数学:"+stu2.getMath());

System.out.println ("语文:"+stu2.getChinese());

}

}

}

九:

import java.util.Scanner;

public class COMPare {

public static void main(String args []){

Scanner tr=new Scanner(System.in);

int b=tr.nextInt();

int a=tr.nextInt();

if(a==b)

System.out.println("相等");

else

System.out.println("不相等");

}

}

十一:

class Average {

public static void main(String args[]) {

String array[] = new String[3];

array[0] = "HELLO";

array[1] = "JAVA";

array[2] = "PROGRAM";

int total = array[0].length();

total += array[1].length();

total += array[2].length();

System.out.println("平均字符串长度为: " + total/3);

}

}

JAVA复习卷

一、选择题(2’*15=30’)

1、如下哪个是Java中的标识符( )

A、fieldname

B、super

C、3number

D、#number

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

A. 3

B. 3. 5

C. 4

D. 5

3、下面的代码段执行之后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

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

形式为( )。

A. static void method( )

B. public void method( )

C. final void method( )

D. abstract void method( )

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

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、下面程序段执行后b的值是( )。

Integer integ =new Integer(9);

boolean b = integ instanceof Object;

A) 9 B) true C) 1 D) false

7.关于 for循环和 while循环的说法哪个正确?()

A.while循环先判断后执行,for循环先执行后判断。

B.while循环判断条件一般是程序结果,for循环的判断条件一般是非程序结果C.两种循环任何时候都不可以替换

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

8.关于对象成员占用内存的说法哪个正确?()

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

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

C.对象的方法不占用内存

D.以上都不对

9.关于继承的说法正确的是:()

A、子类将继承父类所有的属性和方法。

B、子类将继承父类的非私有属性和方法。

C、子类只继承父类public方法和属性

D、子类只继承父类的方法,而不继承属性

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

A、覆盖只有发生在父类与子类之间,而重载可以发生在同一个类中

B.覆盖方法可以不同名,而重载方法必须同名

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

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

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

A、import java.sql.*;

B、import java.util.*;

C、import java.io.*;

D、import https://www.360docs.net/doc/773680551.html,.*;

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

A、p.add(b);

B、p.add(b,"North");

C、p.add(b,"South");

D、b.add(p,"North");

13、Frame对象默认的布局管理器是()

A、FlowLayout

B、BorderLayout

C、CardLayout

D、null

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

A、FileInputStream

B、FileOutputStream

C、DataOutputStream

D、FileWriter

15、下面的程序创建了一个文件输出流对象,用来向文件test.txt中输出数据,假设程序当前目录下不存在文件test.txt,编译下面的程序Test.java后,将该程序运行3次,则文件test.txt 的内容是( )。

import java.io.*;

public class Test {

java期末考试试题及答案

1.谈谈final, finally, finalize的区别。 final关键字: a) 如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为abstract的,又被声明为final的。 b) 将变量或方法声明为final,可以保证它们在使用中不被改变。 c) 被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。 d) 被声明为final的方法也同样只能使用,不能重载。 finally关键字:在异常处理时提供finally 块来执行任何清除操作。如果抛出一个异常,那么相匹配的catch 子句就会执行,然后控制就会进入finally 块。 finalize:方法名,不是关键字。Java技术允许使用finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。它是在Object 类中定义的,因此所有的类都继承了它。子类覆盖finalize() 方法以整理系统资源或者执行其他清理工作。finalize()方法是在垃圾收集器删除对象之前对这个对象调用的。 2.GC是什么? 为什么要有GC? GC是垃圾收集器。Java 程序员不用担心内存管理,因为垃圾收集器会自动进行管理。要请求垃圾收集,可以调用下面的方法之一: System.gc() Runtime.getRuntime().gc() 3.Math.round(11.5)等於多少? Math.round(-11.5)等於多少? 写程序Math.round(11.5) = 12 Math.round(-11.5) = -11 4.给我一个你最常见到的runtime exception ArithmeticException, ArrayStoreException, BufferOverflowException, BufferUnderflowException, CannotRedoException, CannotUndoException, ClassCastException, CMMException, ConcurrentModificationException, DOMException, EmptyStackException, IllegalArgumentException, IllegalMonitorStateException, IllegalPathStateException, IllegalStateException, ImagingOpException, IndexOutOfBoundsException, MissingResourceException, NegativeArraySizeException, NoSuchElementException, NullPointerException, ProfileDataException, ProviderException, RasterFormatException, SecurityException, SystemException, UndeclaredThrowableException, UnmodifiableSetException, UnsupportedOperationException

Java笔试题及答案

Java笔试题及答案 一、单项选择题 1.Java是从()语言改进重新设计。 A.Ada B.C++ C.Pasacal D.BASIC 答案:B 2.下列语句哪一个正确() A. Java程序经编译后会产生machine code B. Java程序经编译后会产生byte code C. Java程序经编译后会产生DLL D.以上都不正确 答案:B 3.下列说法正确的有() A. class中的constructor不可省略 B. constructor必须与class同名,但方法不能与class同名 C. constructor在一个对象被new时执行 D.一个class只能定义一个constructor 答案:C 详解:见下面代码,很明显方法是可以和类名同名的,和构造方法唯一的区别就是,构造方法没有返回值。 package net.study; public class TestConStructor { public TestConStructor() {

} public void TestConStructor() { } public static void main(String[] args) { TestConStructor testConStructor = new TestConStructor(); testConStructor.TestConStructor(); } } 4.提供Java存取数据库能力的包是() 答案:A 5.下列运算符合法的是() A.&& B.<> C.if D.:= 答案:A 详解: java 中没有<> := 这种运算符,if else不算运算符 6.执行如下程序代码 a=0;c=0; do{ --c; a=a-1; }while(a>0); 后,C的值是()

大学java期末考试试题和标准答案

《Java程序设计基础》期终考试试卷(模拟) (闭卷) 一、简单编程题(共50分) 在考试文件夹中新建一个应用程序proj1(应用程序地文件夹名称为proj1),按照以下要求编写程序代码. 1. 在程序中定义Person类,为该类编写如下字段、构造器、访问器、修改器和相应地其他方法.(20分) (1)在Person类中定义两个字段: 私有访问权限,类型为String地name字段; 私有访问权限,类型为int地age字段. (2)在Person类中定义构造器 构造器有两个参数,第一个参数地类型是String,名字为name.第二个地类型是int,名字是age.第一个参数地值赋给字段name,第二个参数地值赋给字段age. (3)为Person类地两个字段分别编写访问器方法,方法名称分别为getName和getAge.getName方法返回类型为String地name字段地值;getAge方法返回类型为int地age字段地值. (4)为Person类地两个字段分别编写修改器方法,方法名称分别为setName和setAge.setName方法有一个String类型地参数,方法中用该参数来设置字段name地值;setAge方法有一个int类型地参数,方法中用该参数来设置字段age地值,并且保证age 字段地值不能为负数,如果要将age设置为负数则给出错误提示. (5)为Person类写一个叫做toString地方法,该方法不需要参数,有返回值.它返回一个字符串,字符串中包含name字段和age字段地值,如果name字段地值是“Helen”,age字段地值是20,则返回字符串:“Name:Helen. Age:20”. 2. 在程序中定义Student类,Student类继承Person类.(10分) (1)在Student类中除了继承其超类Person地name字段和age字段外,它还有自己地字段String类型地school,该字段地访问权限为私有. (2)Student类地构造器有三个参数,第一个参数为name,String类型;第二个参数为age,int类型;第三个参数为school,String类型,这三个参数地值分别赋给三个字段name、age和school. (3)在Student类中重写其超类Person地toString方法,要求该方法返回地字符串不仅包含超类Person中地name字段和age字段地值,而且包含子类Student中地school 字段地值.如果name字段地值是“Helen”,age字段地值是20,school字段地值是“山西大学商务学院”,则返回地字符串为“School:山西大学商务学院Name:Helen. Age:20”. 3. 在程序中定义Test类,在Test类中定义一个main方法,在main方法中实现如下操作:(10分) (1)创建一个Person类地对象,它地name为“John”,age为18,对象名为person1; (2)创建一个Student类地对象,它地name为“Helen”,age为18,school为“MIT”,对象名为stuent1; (3)分别输出这两个对象地相关信息(调用它们地toString方法). 4. 分别为Person类和Student类编写文档注释,并生成应用程序地类文档.要求如下:(10分) (1)类地文档注释,包括类名、类地作者及版本号,作者地名字用考生地姓名标注,版本号使用考试地日期; (2)构造器和各个方法地文档注释,包括方法地名称、构造器和方法地功能说明,要求标注构造器和方法中地参数及返回值,并说明参数地类型、名称和返回值地类型. (3)文档注释完成后要使用BlueJ地JavaDOC工具生成应用程序地类文档. 二、代码改错(共20分)

JAVA期末试题及答案

Java 程序设计》课程试卷 1.使用 Java 语言编写的源程序保存时的文件扩展名是( )。 (A ) .class ( B ) .java C ) .cpp ( D ) .txt 2.设 int a=-2 ,则表达式 a>>>3 的值为( )。 (A ) 0 (B )3 (C ) 8 (D )-1 3.设有数组的定义 int[] a = new int[3] ,则下面对数组元素的引用错误的是( ) ( A )a[0]; ( B ) a[a.length-1]; (C )a[3]; (D )int i=1 ; a[i]; 4.在类的定义中可以有两个同名函数,这种现象称为函数( )。 (A )封装 (B )继承 (C )覆盖 (D )重载 5.在类的定义中构造函数的作用是( )。 (A )保护成员变量 (B )读取类的成员变量 (C )描述类的特征 (D )初始化成员变量 6.下面关键字中,哪一个不是用于异常处理语句( )。 ( A ) try ( B ) break ( C ) catch ( D ) finally 7.类与对象的关系是( )。 (A )类是对象的抽象 (B )对象是类的抽象 15. Java 语言使用的字符码集是 (A) ASCII (B) BCD (C) DCB 16. 如果一个类的成员变量 (A) public (B) (C 对象是类的子类 (D )类是对象的具体实例 )。 8.下面哪一个是 Java 中不合法的标识符( ( A )$persons ( B ) twoNum ( C )_myVar ( D )*point 9.为 AB 类的一个无形式参数无返回值的方法 ( ) 。 ( A ) static void method( ) ( B ) public void method( ) ( C ) final void method( ) ( D ) abstract void method( ) 10.欲构造 ArrayList 类的一个实例,此类继承了 ( A ) ArrayList myList=new Object( ) ( B ) List myList=new ArrayList( ) ( C ) ArrayList myList=new List( ) ( D ) List myList=new List( ) 11. Java 源文件和编译后的文件扩展名分别为( (A) .class 和 .java (C).class 和 .class 12. 在 Java Applet 程序用户自定义的 (A) start( ) (B) stop( ) (C) init( ) 13. 对于一个 Java 源文件, (A) package,import,class (C) import,package,class 14. 下面哪个是非法的: (A) int I = 32; (C) double d = 45.0; method 书写方法头,使得使用类名 List 接口,下列哪个方法是正确的( ) ( B).java 和 .class (D) .java 和 .java Applet 子类中,一般需要重载父类的 (D) paint( ) import, class (B) class,import,package (D) package,class,import ( ) 定义以及 package 正确的顺序是: (B) float f = 45.0; (D) char c = // 符号错 AB 作为前缀就可以调用它,该方法头的形式为 方法来完成一些画图操作。 (D) Unicode 只能 在所在类中使用 则该成员变量必须使用的修饰是

Java web期末考试题

第1页(共7页) 天津师范大学期末考核 2015—2016 学年第2学期 期末考核试卷 科目:Java Web 应用开发 学院:计信学院 专业:计算机科学 一、 单选题:(每小题2分,共10分) 1. 下列语句属于声明语句的是( A )。 A .<%! Int a = 4;%> B.<% int a=4;%> C .<%--int a=4-- %> D. <%@ int a=4%> 得分 2. 一个servlet 的生命周期不包括( B )方法? A .init( )方法 B. invalidate( )方法 C .service( )方法 D .destroy( )方法 得分 3. Application 对象的作用域是( B )。 A . 一次会话 B. 整个应用程序 C . 一次请求 D . 整个页面 得分 4. 下面对servlet 中重定向说法描述错误的是( D )。 A .使用的是HttpServletResponse 接口的sendRedirect()方法 B. 源组件的响应结果不会发送给客户端 C .sendRedirect()方法后的代码仍会执行 D .源组件和目标组件共享ServletRequest 对象

第2页(第7页) 得分 5. 有一个JavaBean 组件,类名为Student ,此JavaBean 组件的获得访问方法是getTotalScore,其功能是获得某个学生几门功课的总分,返回值保留一位小数,则以下关于getTotalScore 的声明正确的是( B )。 A .public int getTotalScore() B. public float getTotalScore() C .protected int getTotalScore() D .protected float getTotalScore() 得分 2. 3. Sevlet 过滤器核心对象放置在javax.servlet 包中,其名称为 4.

Java期末考试试卷1

信息学院2006—2007学年第二学期期末考试试题A 课程名称:Java 语言程序设计主讲:年级: 班级姓名学号 题号一二三四五合计 分数 一、选择(每题1分,共20分) 1.有一个名为MyClass的public类,想成功编译需满足以下哪个条件?() A. MyClass类中必须定义一个正确的main()方法。 B. MyClass必须定义在MyClass.java源文件中。 C. MyClass类必须定义在MyClass包中。 D. MyClass类必须被导入。 2.以下哪些修饰符不能用于顶层类?( ) A. public B. private C. abstract D. final 3.以下哪个是java中合法的关键字?( ) A. array B. Boolean C. protect D. super 4.以下哪些是合法的标识符?( ) A.%abcd B. 2abcd C. package D. _a_long_name 5.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同。这种面向对象程序的特性称为. () A、隐藏 B、覆盖 C、重载 D、Java不支持此特性 6.有以下代码,请问该程序的运行结果是什么?( ) class Example { public static void main(String args[]){ boolean b=true; System.out.println(b); } } A. 打印输出true B. 打印输出1 C.编译错误 D. 无内容输出 7.以下哪些是基本数据类型?( ) A.int B. String C. Integer D. Float 8. 给出以下代码,请选择正确的选项?( ) class Example{ public static void main(String[] args){ char a=”\u1234”; } } A. 代码编译成功 B. 代码编译成功,但有警告 C. 代码编译失败 9.以下哪个语句用于声明一个二维数组?( ) A. int[5][5] a=new int[][]; B. int a=new int[5,5] C. int[][] a=new int[5][5]; D. int[][] a=new [5]int[5]; 10.给出以下代码,请问该程序的运行结果是什么?()

java基础考试题及答案

新员工考试 一、选择题(共30题,每题 2 分) 1. 下面哪些是合法的标识符?(多选题) A. $persons B. TwoUsers C. *point D. this E. _endline 答案A,B,E 分析Java 的标识符可以以一个Unicode 字符,下滑线(_),美元符($)开始,后续字符可以是前面的符号和数字,没有长度限制,大小写敏感,不能是保留字(this 保留字)。 2. 哪些是将一个十六进制值赋值给一个long 型变量?(单选题) A. long number = 345L; B. long number = 0345; C. long number = 0345L; D. long number = 0x345L 答案D 分析十六进制数以Ox开头,Io ng型数以L (大小写均可,一般使用大写,因为小写的 l 和数字1 不易区分)。 3. 下面的哪些程序片断可能导致错误? (多选题) A. String s = "Gone with the wind"; String t = " good "; String k = s + t; B. String s = "Gone with the wind"; String t; t = s[3] + "one"; C. String s = "Gone with the wind"; String standard = s.toUpperCase(); D. String s = "home directory"; String t = s - "directory"; 答案B,D 分析 A:String 类型可以直接使用+进行连接运算。 B:String 是一种Object ,而不是简单的字符数组,不能使用下标运算符取其值的某个元 素,错误。 C:toUpperCase()方法是String 对象的一个方法,作用是将字符串的内容全部转换为大写并返回转换后的结果(String 类型)。 D:String 类型不能进行减(- )运算,错误。 4. point x 处的哪些声明是句法上合法的? (多选题) cIass Person { private int a; pubIic int change(int m){ return m; } } pubIic cIass Teacher extends Person { public int b;

JAVA测试题(三套含答案)

<测试一> 1.在单一文件中import、class和package的正确出现顺序是:A A.package, import, class B.class, import, package C.import, package, class D.package, class, import 2.public static void main方法的参数描述是:A,D A.String args[] B.Strings args[] C.String args D.String []args 3.下面哪行代码会在编译的时候出现错误或警告:A,B,C,D A.float f=1.3; B.char c="a"; C.byte b=257; D.boolean b=null; E.int i=10; 4.编译,运行下列代码后的结果是:D public class Test { public static void main (String args []) { int age; age = age + 1; System.out.println("The age is " + age); } } A.编译,运行后没有输出 B.编译,运行后输出:The age is 1 C.能通过编译,但运行时产生错误 D.不能通过编译 4.下面那些关键字不是JAVA的关键字B A if B then C goto D while E case 5.下面那些不是合法的变量定义:A,F A.2variable B.variable2 C. _whatavariable

D. _3_ E. $anothervar F. #myvar 6.内部数据类型byte的取值范围是B A.0 - 65, 535 B.(–128) – 127 C.(–32,768) – 32,767 D.(–256) – 255 7.下列哪些表达式返回true AB A."john" == "john" B."john".equals("john") C."john" = "john" D."john".equals(new Button("john")) 8.声明公用的abstract方法的正确格式是A A.public abstract void add(); B.public abstract void add() {} C.public abstract add(); D.public virtual add(); 9.下面的代码能打印出的结果为:C int i=1; switch (i) { case 0: System.out.println("zero"); break; case 1: System.out.println("one"); case 2: System.out.println("two"); default: System.out.println("default"); } A.one B.one, default C.one, two, default D.default 10.下面的代码能打印出的结果为:B int i=9; switch (i) { default:

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

J A V A语言程序设计期末考试试题及答案 TTA standardization office【TTA 5AB- TTAK 08- TTA 2C】

J A V A语言程序设计考试试题及部分答案 一、单选题:(每题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} ; 其中0≤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 8.下列语句序列执行后,i 的值是( D )。 int i=8, j=16; if( i-1 > j ) i--; else j--; A) 15 B) 16 C) 7 D) 8 9.下列语句序列执行后,k 的值是( C )。 int i=10, j=18, k=30; switch( j - i ) { case 8 : k++; case 9 : k+=2; case 10: k+=3; default : k/=j; } A) 31 B) 32 C) 2 D) 33 10.下面语句执行后,i 的值是( B )。 for( int i=0, j=1; j < 5; j+=3 ) i=i+j; A) 4 B) 5 C) 6 D) 7 11.设有定义 float x=, y=, z=;则以下的表达式中,值为true的是( B )。 A) x > y || x > z B) x != y

java笔试题含答案

班级:_______________ 学号:______________ 姓名:___________ Java 笔试题 (可多选) 1. 下面哪些是Thread类的方法( ABD) A start() B run() C exit() D getPriority() 2. 下面关于类的说法正确的是(A) A 继承自Throwable B Serialable C 该类实现了Throwable 接口 D 该类是一个公共类 3. 下面程序的运行结果是( false ) String str1 = "hello"; String str2 = "he" + new String("llo"); == str2); 4. 下列说法正确的有( C) A. class中的constructor不可省略

B. constructor必须与class同名,但方法不能与class同名C. constructor在一个对象被new时执行 D.一个class只能定义一个constructor 5. 指针在任何情况下都可进行>, <, >=, <=, ==运算( true ) 6. 下面程序的运行结果:(B) public static void main(String args[]) { Thread t = new Thread() { public void run() { pong(); } }; (); "ping"); } static void pong() { "pong"); } A pingpong

B pongping C pingpong和pongping都有可能 D 都不输出 7. 下列属于关系型数据库的是(AB) A. Oracle B MySql C IMS D MongoDB 8. GC(垃圾回收器)线程是否为守护线程( true ) 9. volatile关键字是否能保证线程安全( false ) 10. 下列说法正确的是(AC) A LinkedList继承自List B AbstractSet继承自Set C HashSet继承自AbstractSet D WeakMap继承自HashMap 11. 存在使i + 1 < i的数吗(存在) 12. 的数据类型是(B) A float B double C Float D Double

Java程序设计试题及答案

一、判断题。判断下列各题是否正确,若正确,在()内打“√”,否则打“×”。 1、Java语言具有较好的安全性和可移植性及与平台无关等特性。√ 2、Java语言的源程序不是编译型的,而是编译解释型的。√ 3、Java语言使用的是Unicode字符集,每个字符在内存中占8位。× 4、Java语言中不同数据类型的长度是固定的,不随机器硬件不同而改变。√ 6、一个类可以实现多个接口,接口可以实现“多重继承”。√ 7、实现接口的类不能是抽象类。× 二、不定项选择题。 1、编译Java Application源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(B)。 A、java B、class C、html D、exe 2、main方法是Java Application程序执行的入口点,关于main方法的方法首部,以下(B)项是合法的。 A、public static void main() B、public static void main(String args[]) C、public static int main(String[] arg) D、public void main(String arg[]) 3、关于下面代码的说法(C)是正确的 public class Example{ public static void main(String[] args){ int[] arr= new int[10]; } } A、编译时产生错误 B、编译时正确,运行时将产生错误 C、输出零 D、输出空(null) 4、不正确的表达式是(AB)。 A、float a=; B、Double a=new Double C、byte a = (byte)340; D、Byte a = 120; 5、定义一个类名为""的类,并且该类可被一个工程中的所有类访问,那么该类的正确声明应为( CD)。 A、private class MyClass extends Object B、class MyClass extends Object C、public class MyClass D、public class MyClass extends Object 6、下列构造方法的调用方式中,正确的是(C)。 A、按照一般方法调用 B、由用户直接调用

《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考试试卷及答案

JA V A考试试卷及答案 选择题 3、在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( D )方法来完成一些画 图操作。 A. start() B. stop() C. init() D. paint() 3、Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点?B A)安全性B)多线程C)跨平台D)可移植 4、下列哪个类声明是正确的?D A)abstract final class HI{···}B)abstract private move(){···} C)protected private number; D)public abstract class Car{···} 6、在Java语言中,下列哪些语句关于内存回收的说明是正确的? B A.程序员必须创建一个线程来释放内存; B.内存回收程序负责释放无用内存 C.内存回收程序允许程序员直接释放内存 D.内存回收程序可以在指定的时间释放内存对象 10、下列Object类中的方法,哪一项不是完全跟线程有关:A A.String toString() B.void notify() C.void notifyAll() D.void wait() 11、给出下面代码:C

public class Person{ static int arr[] = new int[10]; public static void main(String a[]) { System.out.println(arr[1]); } } 下列说法中正确的是? A.编译时将产生错误; B.编译时正确,运行时将产生错误; C.输出零; D.输出空。 12、字符串是Java已定义的类型,关于它的构造函数,下面说法不正确的是:B A.String(char[] value, int offset, int count) B.String(int[] codePoints,int offset, int count) C.String(String original) D.String(StringBuffer buffer) 13、下列说法中正确的是:C A.导入包会影响程序的性能 B.包存储在类库中 C.包是类的容器D.上述说法都不对 14、下列不是String类的常用方法是:C

java_期末考试试题(含答案)

1、如下哪个是Java中有效的关键字。( C、false ) 2、下面的代码段执行之后count的值是什么。( D、16 ) int count=1; for(int i=1;i<=5;i++){ count+=i; } System.out.println(count); 3、下列哪一个import命令可以使我们在程序中创建输入/输出流对象。( C、import java.io.*; ) 4、下列选项中,不属于Java语言特点的一项是。( C、编译执行 ) 5、阅读下列代码段,选出该代码段的正确的文件名。( D ) class A{ void methodl(){ System.out.println(”methodl in class A”):} } public class B{ void method2(){ System.out.println(”method2 in class B”):} public static void main(String args[]){ System.out.println(”main()in class B”): } } A、A .java B、A.class C、B.class D、B.java 6、下面哪条语句把方法声明为抽象的公共方法。( C.public abstract void method(){} 7、编译下面源程序会得到哪些文件。( D ) 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、编译不成功 8、定义类头时能使用的修饰符是(C、protected )。 A、private B、static C、protected D、abstract 9、为了区分重载多态中同名的不同方法,要求( A、形式参数个数或者类型不同 A、形式参数个数或者类型不同 B、返回值类型不同 C、调用时用类名或对象名做前缀 D、形式参数名称不同 10、float类型数据和double类型数据做加法,得到结果的类型是(C、double类型 )。 11、如果在编译Java程序时,编译结果报告说找不到要编译的代码,通常的错误不是如下的哪一项?(B、文件名拼写错误) 12、int类型被包装在如下的哪一个类中?( B、java.1ang.Integer ) 13、关于对下列代码段的描述,正确的一项是( C )。 catch(Exception e){ System.Err. println(“An exception was thrown”); throw e; } A、程序终止 B、编译出错 C、该异常不会被处理 D、该异常会继续被上层处理 14、下列说法中,错误的一项是( C )。 A、内部类是被定义于另一个类中的类 B、使用内部类实现监听器,在编程时比较容易实现 C、内部类对象可以访问外部类的成员方法和变量,包括私有成员

Java试题及答案

1、在中如果声明一个类为,表示什么意思? 答:是最终的意思,可用于定义变量、方法和类但含义不同,声明为的类不能被继承。 2、父类的构造方法是否可以被子类覆盖(重写)? 答:父类的构造方法不可以被子类覆盖,因为父类和子类的类名是不可能一样的。 3、请讲述和的区别。 答:类所定义的对象是用于存放“长度固定”的字符串。 类所定义的对象是用于存放“长度可变动”的字符串。

4、如果有两个类A、B(注意不是接口),你想同时使用这两个类的功能,那么你会如何编写这个C类呢? 答:因为类A、B不是接口,所以是不可以直接继承的,但可以将A、B类定义成父子类,那么C类就能实现A、B类的功能了。假如A为B的父类,B为C的父类,此时C就能实现A、B的功能。 5、结合视频5(多线程),分析()和()方法的区别。 答:睡眠的意思 : () 方法用来暂时中止执行的线程。在睡眠后,线程将进入就绪状态。 等待的意思: 如果调用了 () 方法,线程将处于等待状态。 用于在两个或多个线程并发运行时。 6、谈谈你对抽象类和接口的理解。 答:定义抽象类的目的是提供可由其子类共享的一般形式、子类可以根据自身需要扩展抽象类、抽象类不能实例化、抽象方法没有函数体、抽象方法必须在子类中给出具体实现。 他使用来继承。 接口:一个接口允许一个类从几个接口继承而来,程序一次只能继承一个类但可以实现几个接口,接口不能有任何具体的方法,接口也可用来定义可由类使用的一组常量。其实现方式是来实现。 7. 的接口和的虚类的相同和不同处。 由于不支持多继承,而有可能某个类或对象要使用分别在几

个类或对象里面的方法或属性,现有的单继承机制就不能满足要求。与继承相比,接口有更高的灵活性,因为接口中没有任何实现代码。当一个类实现了接口以后,该类要实现接口里面所有的方法和属性,并且接口里面的属性在默认状态下面都是,所有方法默认情况下是.一个类可以实现多个接口。 8. 垃圾回收的优点和原理。并考虑2种回收机制。 语言中一个显著的特点就是引入了垃圾回收机制,使程序员最头疼的内存管理的问题迎刃而解,它使得程序员在编写程序的时候不再需要考虑内存管理。由于有个垃圾回收机制,中的对象不再有“作用域”的概念,只有对象的引用才有“作用域”。垃圾回收可以有效的防止内存泄露,有效的使用可以使用的内存。垃圾回收器通常是作为一个单独的低级别的线程运行,不可预知的情况下对内存堆中已经死亡的或者长时间没有使用的对象进行清楚和回收,程序员不能实时的调用垃圾回收器对某个对象或所有对象进行垃圾回收。回收机制有分代复制垃圾回收和标记垃圾回收,增量垃圾回收。 9.谈谈,,的区别。 -修饰符(关键字)如果一个类被声明为,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为的,又被声明为的。将变量或方法声明为,可以保证它们在使用中不被改变。被声明为的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为的方法也同样只

java期末考试试题(含答案)

模拟B卷 考试说明: 1.使用Eclipse编写程序。项目名称为:班级_姓名_学号_卷号。注意:卷号为A或B 2.在项目文件夹下新建一个文本文件,文件名为:答案.txt 3.将编程题外的所有题目写在文本文件中,答案要标明题号。 注意:考试期间遇到死机等问题,需要请示老师,切勿自行解决。否则后果自负。 一、单项选择题:共20题,每小题1分,满分20分 1、下列选项中,不属于Java语言特点的一项是。( D ) A、安全性 B、分布式 C、面向对象 D、编译执行 2、Java语言和c++语言相比,哪一项是Java有的,而c++没有?( C ) A、面向对象 B、有类库 C、跨平台 D、动态链接 3、如下哪个不是Java中有效的变量名。( A ) A、 if B、hello C、name D、good 4、下列不属于Java保留字的一个是( B )。 A、else B、Unicode C、if D、static 5、现有2个char,类型的变量al=’a’、a2=2,当执行al=(char)(al+a2);语句之后,al的值应 该是( C )。 A、’a’ B、12 C、’c’ D、语句在编译时出错 6、下列关于int类型和long类型的说法中,正确的一个是( A )。 A、int类型可以自动转换为long类型 B、long类型可以自动转换为int类型 C、long类型占的存储空间比int类型的小 D、long类型和int类型数据能表示整数的范围一样 7、下列类的定义中,错误的是( B )。 A、class y{ .... } B、public x extends y{ .... } C、public class x extends y{ .... } D、class x extends y implements y1{ .... } 8、执行语句int i = 1, j = ++i; 后i与j的值分别为( D )。 A、1与1 B、2与1 C、1与2 D、2与2 9、为了区分重载多态中同名的不同方法,要求( C )。 A、调用时用类名或对象名做前缀 B、返回值类型不同 C、形式参数个数或者类型不同 D、形式参数名称不同 10、定义类头时能使用的修饰符是( C )。 A、private B、static C、protected D、abstract 11、如果在编译Java程序时,编译结果报告说找不到要编译的代码,错误是( D )

相关文档
最新文档