文档库 最新最全的文档下载
当前位置:文档库 › (完整word版)Java期末考试题及答案

(完整word版)Java期末考试题及答案

(完整word版)Java期末考试题及答案
(完整word版)Java期末考试题及答案

Java期末考试题

一、简答题(共8个题,每题5分,共40分)

1.java语言有哪些特点?

(1)简单的

a)Java最初是为对家用电器进行集成控制而设计的一种语言,因此它必须简单明了。

b)Java的风格类似于C++,因而C++程序员初次接触Java语言,就会感到很熟悉。从某种

意义上讲,Java语言是C及C++语言的一个变种。

c)Java摒弃了C++中容易引发程序错误的一些特性,如指针、结构、枚举以及内存管理等。

d)Java提供了丰富的类库,可以帮助我们很方便的开发Java程序。

(2)面向对象的

面向对象可以说是Java最重要的特性,所以它支持继承、重载、多态等面向对象的特性。

Java语言的设计是完全面向对象的,它不支持类似C语言那样的面向过程的程序设计技术。(3)健壮的

Java致力于检查程序在编译和运行时的错误。Java也是一种强类型的语言,其类型检查比C++还要严格。类型检查帮助我们检查出许多开发早期出现的错误。Java自己负责内存管理,提供了垃圾内存回收机制,有效的避免了C++中最头疼的内存泄漏问题。

(4)安全的

Java的安全性可从两个方面得到保证。一方面,在Java语言里,删除了指针和释放内存等C++功能,避免了非法内存操作。另一方面,通过Java的安全体系架构来确保Java代码的安全性。

从一开始,Java就被设计成能够防范各种袭击,包括:禁止运行时堆栈溢出。例如,蠕虫等病毒常用的袭击手段;禁止在自己的处理空间之外破坏内存;未经授权禁止读写文件;

许多安全特性相继不断的被加入Java中。

(5)解释的

Java代码是解释执行的,我们使用Java编译器将Java代码编译成字节码,这是一种中间代码,然后由Java解释器解释执行。而C++程序是编译执行的,C++程序代码被编译为本地机器指令,然后执行。

(6)与平台无关的

Java作为一种网络语言,其源代码被编译成一种结构中立的中间文件格式。只要有Java 运行系统的机器都能执行这种中间代码。Java源程序被编译成一种与机器无关的字节码格式,

在Java虚拟机上运行。

(7)多线程的

Java语言的一个重要特性就是在语言级支持多线程的程序设计。多线程就好像我们做一张桌子,如果你一个人完成这张桌子—就好像单线程,那么你需要先做桌面,做完桌面后,再做4个桌子腿,如果现在有5个人来做桌子—在程序中开辟5个线程,其中1个人做桌面,另外4个人分别做4个桌子腿,那么这两种方式效率的高低,相信大家都能区分出来。

(8)动态的

Java的动态特性是其面向对象设计方法的扩展。它允许程序动态地装入运行过程中所需要的类。

在C++程序设计过程中,每当在类中增加一个实例变量或一个成员函数后,引用该类的所有子类都必须重新编译,否则将导致程序崩溃。

Java从以下几个方面采取措施来解决这个问题。

a)Java编译器不是将对实例变量和成员函数的引用编译为数值引用,而是将符号引用信息在字节码中保存下来,传递给解释器,再由解释器在完成动态连接类后,将符号引用信息转换为数值偏移量。

b)一个在存储器中生成的对象不在编译过程中决定,而是延迟到运行时由解释器确定。这样,对类中的变量和方法进行更新时就不至于影响现存的代码。

c)解释执行字节码时,这种符号信息的查找和转换过程仅在一个新的名字出现时才进行一次,随后代码便可以全速执行。在运行时确定引用的好处是可以使用已被更新的类,而不必担心会影响原有的代码。如果程序连接了网络中另一系统中的某一类,该类的所有者也可以自由地对该类进行更新,而不会使任何引用该类的程序崩溃。

d)Java还简化了使用一个升级的或全新协议的方法。如果你的系统运行Java程序时遇到了不知怎样处理的程序,Java能自动下载你所需要的功能程序。

2.什么是java虚拟机?

Java虚拟机JVM(Java Virtual Machine)在JA V A编程里面具有非常重要的地位。约相当于JA V A 运行环境JRE。JA V A虚拟机是在真实机器中用软件模拟实现的一种想象机器,它为不同的硬件平台提供了一种编译JA V A技术代码的规范,该规范使JA V A软件独立于平台。

JVM对下列各项做出了定义:指令集,寄存器,类文件格式,栈,垃圾收集堆,存储区。Java虚拟机的功能:

(1)通过ClassLoader寻找和装载Class文件

(2)解释字节码成为指令并执行,提供Class文件的运行环境

(3)进行运行期间垃圾回收

(4)提供与硬件交互的平台

JA V A虚拟机是JA V A平台无关的保障。正是因为有虚拟机这中间层,JA V A才能够实现与平台无关。虚拟机就好比是一个JA V A运行的基本平台,所有的JA V A程序都运行在虚拟机上。所有与平台有关的东西都是由虚拟机去处理。

3.什么是方法重载(Overloading)与方法覆盖(Overriding)?

(1) 方法重载(Overloading):

方法重载是指同名的方法在不同的地方具有多种含义。方法重载使得在类中可以存在方法名相同的多个方法,但方法的原型不能完全相同,由方法的参数不同来决定所使用的是哪个方法。方法的原型包括方法名和方法参数类型。

(2) 方法覆盖(overriding)

方法覆盖也叫方法重写,是指方法的含义被重新编写后的方法所替代。对于方法覆盖,子类可以重新实现父类的某些方法,并具有自己的特征。这样,覆盖隐藏了父类的方法,使子类可以具有自己的实现方法。子类覆盖父类的方法时,子类中方法的访问权限不能低于父类中该方法的访问权限

4.java中equals和“= =”的区别?

使用“== ==”比较基本类型字段,使用equals 方法比较对象字段。

== ==操作比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量在堆中存储的地址是否相同,即栈中的内容是否相同;equals操作表示的两个变量是否是对同一个对象的引用,即堆中的内容是否相同。

==比较的是2个对象的地址,而equals比较的是2个对象的内容。显然,当equals为true时,== ==不一定为true。

5.什么是抽象类?什么是接口?

一般称含有抽象方法的类称为抽象类。抽象类是不能被实例化的类,用abstract修饰。

接口是一种与类相似的结构,但接口不是类,而是一组对类的要求,这些类要与接口一致一

个类可以实现一个或多个接口,并在需要接口的地方,随时使用实现了相应接口的对象。

6.什么是多态?

一个对象变量可以指向多种实际类型对象的现象被称为“多态”(polymorphism)。

7.异常的分类?它们的区别是什么?

Error:称为错误,由Java虚拟机生成并抛出,包括动态连接失败、虚拟机错误等,程序对其不作处理。

Exception:所以异常类的父类,其子类对应了各种各样可能出现的异常事件,一般需要用户显式的声明或捕获。

Runtime Exception:一类特殊的异常,如被0除、数组下标超范围等,其产生比较频繁,处理麻烦,如果显式的声明或捕获将会对程序的可读性和运行效率影响很大。因此

由系统自动检测并将它们交给缺省的异常处理程序(用户可不必对其处理)。

8.什么是流?

流(stream)是输入和输出设备的一种抽象表示,这些设备是数据源或数据终点。可以象流中写入数据,也可以从流中读出数据。可以把流想象为流入自己程序或从自己程序中流出的字节序列。

当把数据写入流时,该流称为输出流。输出流可以通往任何可以传输字节序列的设备,例如硬盘上的文件,或连接用户系统至远程系统的电话线路。输出流也可以通向显示器,但这会大大限制其真正的功能。

二、程序设计题(共4个题,每题15分,共60分)

1、输出1到100以内的前10个质数。

public class Zhishu {

public static void main(String args[])

{

System.out.println("1到100以内的前10个质数:");

int s,i,j=0;

for(s=2;s<=100;s++)

{

for(i=2;i<=s/2;i++)

{

if(s%i==0)

break;

}

if(i>s/2)

{

j++;

if(j<=10)

System.out.println("第"+j+"个:"+s);

}

}

}

}

2、计算并输出result=1!+2!+3!+ …+10!的结果。

public class Sum {

public static void main(String args[])

{

System.out.println("result=1!+2!+3!+ …+10!");

int s=0,t=1;

int n;

for(n=1;n<=20;n++)

{

t=t*n;

s=s+t;

}

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

}

3、定义一个长方形类,该类具有长和宽两种属性,并具有相应的构造方法、属性访

问方法和计算周长和面积的方法,要求输出长是5宽是4的长方形的面积和周长。

public class Rectangle {

private double length;//长

private double width;//宽

public Rectangle (){}// 无参数的构造方法

public Rectangle (double length, double width)

{

this.length=length;

this.width=width;

} //带参数的构造方法

public void setLength(double lLength)

{

length=lLength;

}

public void setWidth(double wWidth)

{

width=wWidth;

}

public double getLength()

{

return length;

}

public double getWidth()

{

return width;

}

public double area(double i, double j)

{//计算面积

return (length*width);

}

public double permcter (double i, double j)

{//计算周长

return ((length+width)*2);

}

public static void main(String []args)

{

System.out.println("长为5,宽为4的长方形的周长与面积:");

Rectangle Rectangle =new Rectangle (5,4);

System.out.println("周长(5,4)="+Rectangle.permcter(5,4));

System.out.println("面积(5,4)="+Rectangle.area(5,4));

}

}

4、定义一个父类Parents和两个子类Father类和Mother类:Parents类具有两个属

性:姓名和年龄,该类所包含的方法除了构造方法和相应的get和set方法,还有一个print()用来打印对象的具体的信息,例如,输出“我是家长,我的名字是...,我的年龄是...岁";Father类增加了一个属性:爱好,并重写了父类Parents 中的print()方法,输出“我是父亲,我的名字是...,我的年龄是...岁,我的爱好是...”;Mother类增加了一个属性:头发的颜色,并重写了父类Parents中的print()方法,输出“我是母亲,我的名字是...,我的年龄是...岁,我头发的颜色是...”。最后定义一个测试类Test,要求显示如下信息:

5、我是家长,我的名字是王瑞,我的年龄是36岁

6、我是父亲,我的名字是张峰,我的年龄是45岁,我的爱好是打保龄球

7、我是母亲,我的名字是孙娟,我的年龄是36岁,我的头发颜色是棕色

Parents:

public abstract class Parents {

private String name;//姓名

private int age;//年龄

public Parents(){

}

public Parents(String name,int age){

this.setName(name);

this.setAge(age);

}

public void setName(String name){

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

}

public String getName() {

return name;

}

public void setAge(int age){

this.age = age;

}

public int getAge(){

return age;

}

void Sys(){

System.out.println("我是家长,"+"我的名字是"+this.getName()+",我的年龄是"+this.getAge()+"岁");

}

}

Father:

public class Father extends Parents{

private String favor;

public Father(String name,int age, String favor){

super(name,age);

this.favor=favor;

}

public void setFavor(String favor) {

this.favor = favor;

}

public String getFavor() {

return favor;

}

void Sys()

{

System.out.println("我是父亲,"+"我的名字是"+this.getName()+",我的年龄是"+this.getAge()+"岁,我的爱好是"+this.getFavor());

}

}

Mother:

public class Mother extends Parents{

private String hairColor;//头发颜色

public Mother(String name,int age,String hairColor){

super(name,age);

this.hairColor=hairColor;

}

public void setHairColor(String hairColor) {

this.hairColor = hairColor;

}

public String getHairColor() {

return hairColor;

}

void Sys(){

System.out.print("我是母亲,"+"我的名字是"+this.getName()+",我的年龄是"+this.getAge()+"岁,我头发的颜色是"+this.getHairColor());

}

}

Test:

public class Test{

public static void main(String[] args)

{

Parents p=new Parents("王瑞",36);

Father f=new Father("张峰",45,"打保龄球");

Mother m=new Mother("孙娟",36,"棕色");

p.Sys();

f.Sys();

m.Sys();

}

}

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程序设计期末考试题(多套含答案)

《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期末考试试卷

天津城市建设学院2007~2008学年第二学期 《 java 语言程序设计A 》 试题A 卷 课程号:073101-0 试卷说明:闭卷考试,时间120分钟。 一、 填空(本题共15空,每空2分,共30分) 1.如果一个java 源程序文件中定义有4个类,使用sun 公司的JDK 编译器javac 编译该源程序文件将产生_____4___个文件名与类名相同扩展名为___.Class_____的字节码文件。 2.Java 中所有类都是类 __Object__的子类。 3.请填出在java .lang 包中与下列基本数据类型相对应的封装类: float :java .lang .Float , char : _ java .Lang.char_______, boolean : ___ java .Lang.boolean_____。 4.被关键字____final______修饰的方法是不能被当前类的子类重新定义的方法 5.线程的四种状态是__新建_____ 、_运行_ 、_中断 、__死亡___。 6.java 语言中__https://www.wendangku.net/doc/a610749393.html,ng.Objet ___是所有类的根。 7.Swing 的事件处理机制包括__事件的监听者__、事件和事件处理者。 8.URL_____Uniform Resourse Locator_____是的缩写。 9.java 有两类应用程序java Application 和____java 10.转义字符以___\__开头。 二、选择(本题共20小题,每题2分,共40分) 1.欲构造ArrayList 类的一个实例,此类继承了List 接口,下列哪个方法是正确的 ? ( B ) A 、 ArrayList myList=new Object (); B 、 List 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'; } } B 、 good and abc B 、 good and gbc C 、test ok and abc D 、 test ok and gbc 5.运行下列程序, 会产生什么结果 ( A )

JAVA期末考试复习试题

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)对象是类的抽象(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. 如果一个类的成员变量只能在

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

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期末考试复习题及答案(1)

《Java程序设计》课程试卷 1.使用Java语言编写的源程序保存时的文件扩展名是( B )。 (A).class (B).java (C).cpp (D).txt 2.设int a=-2,则表达式a>>>3的值为( C )。 (A)0 (B)3 (C)8 (D)-1 3.设有数组的定义int[] a = new int[3],则下面对数组元素的引用错误的是( C )。 (A)a[0]; (B)a[]; (C)a[3]; (D)int i=1; a[i]; 4.在类的定义中可以有两个同名函数,这种现象称为函数( D )。 (A)封装(B)继承(C)覆盖(D)重载 5.在类的定义中构造函数的作用是( D )。 (A)保护成员变量(B)读取类的成员变量(C)描述类的特征(D)初始化成员变量 6.下面关键字中,哪一个不是用于异常处理语句( B )。 (A)try (B)break (C)catch (D)finally 7.类与对象的关系是( A )。 (A)类是对象的抽象(B)对象是类的抽象(C)对象是类的子类(D)类是对象的具体实例 8.下面哪一个是Java中不合法的标识符( D )。 (A)$persons (B)twoNum (C)_myVar (D)*point 9.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A )。 (A)static void method( ) (B)public void method( ) (C)final void method( ) (D)abstract void method( ) 10.欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的( C )。 (A)ArrayList myList=new Object( ) (B)List myList=new ArrayList( ) (C)ArrayList myList=new List( ) (D)List myList=new List( ) 源文件和编译后的文件扩展名分别为( B ) (A) .class和 .java (B).java和 .class (C).class和 .class (D) .java和 .java 12.在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( D )方法来完成一些画图操作。 (A) start( ) (B) stop( ) (C) init( ) (D) paint( ) 13.对于一个Java源文件,import, class定义以及package正确的顺序是: ( A ) (A) package,import,class (B) class,import,package (C) import,package,class (D) package,class,import 14.下面哪个是非法的:( D ) (A) int I = 32; (B) float f = ; (C) double d = ; (D) char c = ‘u’;如果一个类的成员变量只能在所在类中使用,则该成员变量必须使用的修饰是( C ) (A) public (B) protected (C) private (D) static 17.下面关于main方法说明正确的是( B ) (A) public main(String args[ ]) (B) public static void main(String args[ ]) (C) private static void main(String args[ ]) (D) void main() 18.哪个关键字可以对对象加互斥锁( B ) (A) transient (B) synchronized (C) serialize (D) static 19.关于抽象方法的说法正确的是( D ) (A)可以有方法体 (B) 可以出现在非抽象类中 (C) 是没有方法体的方法(D) 抽象类中的方法都是抽象方法 包的File类是( B ) (A)字符流类(B) 字节流类 (C) 对象流类 (D) 非流类 21.Java application中的主类需包含main方法,以下哪项是main方法的正确形参( B ) A、 String args B、String args[] C、Char arg D、StringBuffer args[] 22.以下代码段执行后的输出结果为( A ) i nt x=-3; int y=-10; 、-1B、2 C、1 D、3 23.以下关于继承的叙述正确的是()。

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

《JA V A语言程序设计》期末考试试题及答案1(应考必备题库) 一、单选择题 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( ) 二、填空题 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期末考试试题及答案 ava期末考试试试及答案 (2009-05-22 13:00:12) 试试 试试, 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,

Java期中测试试题卷及答案

考试类型:一纸闭卷( );完全闭卷( √ );开卷( ) 第2学期期中测试试卷 学 院 班 级 姓 名 学 号 一、单项选择题(本大题共15小题,每小题2分, 共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 1. 关于对象成员占用内存说法正确的是( ) A .同一个类的对象共用一段内存 B .同一个类的对象使用不同一段内存,但静态成员共享相同的内存空间 C .对象的方法不占用内存 D .以上都不对 2.关于方法的说法正确的是( ) A .方法中的形参可以和方法所属类的属性相同 B .方法必须有形参 C .同类不同的方法中不能有同名的自变量,否则会产生不可预测的结果 D .没有返回值的方法可以用void 来表示,也可以不加 3. 类Test1定义如下: 1. public class Test1{ 2. public float aMethod (float a, float b ){ } 3. 4. } 将以下方法插入行3不合法的是( ) 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){ } 4.构造函数被调用于() A.创建对象时B.类定义时 C.使用对象的方法时D.使用对象的属性时 5.下面说法正确是() A.每个Java类都至少有一个构造方法,如果没有则机器自动生成一个默认的构造方法。 B. 如果类里定义了一个或多个构造方法,Java也提供默认的构造方法。 C. 每个Java类中用户必须定义至少一个构造方法 D. 以上都不对 6.关于继承的说法正确是的() A.子类将继承父类所有的属性和方法 B.子类继承父类的非私有属性和方法 C.子类只能继承父类public方法和属性 D.子类只能继承父类的方法,而不能继承属性 7.下列说法正确的是() A. 子类只能覆盖父类的方法,而不能重载 B. 子类只能重载父类的方法,而不能覆盖 C. 子类不能定义和父类同名同形参的方法,否则系统将不知道使用哪个方法 D. 重载就是一个类中有多个同名但有不同形参或方法体的方法 8.this和super() A. 都可以用在main( )方法中B.指向一个内存地址 C.不能用在main()方法中 D.意义相同 9.下列关于修饰符混用说法中,错误的是()。 A.abstract 不能与final并列修饰同一个类 B. abstract类中不可以有private的成员

Java期中测试试题卷及答案

考试类型:一纸闭卷( );完全闭卷( √ );开卷( ) 第2学期期中测试试卷 学 院 班 级 姓 名 学 号 一、单项选择题(本大题共15小题,每小题2分, 共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 1. 关于对象成员占用内存说法正确的是( ) A .同一个类的对象共用一段内存 B .同一个类的对象使用不同一段内存,但静态成员共享相同的内存空间 C .对象的方法不占用内存 D .以上都不对 2.关于方法的说法正确的是( ) A .方法中的形参可以和方法所属类的属性相同 B .方法必须有形参 C .同类不同的方法中不能有同名的自变量,否则会产生不可预测的结果 D .没有返回值的方法可以用void 来表示,也可以不加 3. 类Test1定义如下: 1. public class Test1{ 2. public float aMethod (float a, float b ){ } 3. 4. } 将以下方法插入行3不合法的是( ) 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){ } 4.构造函数被调用于() A.创建对象时B.类定义时 C.使用对象的方法时D.使用对象的属性时 5.下面说法正确是() A.每个Java类都至少有一个构造方法,如果没有则机器自动生成一个默认的构造方法。 B. 如果类里定义了一个或多个构造方法,Java也提供默认的构造方法。 C. 每个Java类中用户必须定义至少一个构造方法 D. 以上都不对 6.关于继承的说法正确是的() A.子类将继承父类所有的属性和方法 B.子类继承父类的非私有属性和方法 C.子类只能继承父类public方法和属性 D.子类只能继承父类的方法,而不能继承属性 7.下列说法正确的是() A. 子类只能覆盖父类的方法,而不能重载 B. 子类只能重载父类的方法,而不能覆盖 C. 子类不能定义和父类同名同形参的方法,否则系统将不知道使用哪个方法 D. 重载就是一个类中有多个同名但有不同形参或方法体的方法 8.this和super() A. 都可以用在main( )方法中B.指向一个内存地址 C.不能用在main()方法中 D.意义相同 9.下列关于修饰符混用说法中,错误的是()。 A.abstract 不能与final并列修饰同一个类 B. abstract类中不可以有private的成员

大学JAVA期末考试试题带答案

《JA V A程序设计》期末考试试题(三 一、单项选择题 1、如下哪个是Java中的标识符(D A、public B、super C、3number D、width 2、如下哪个是Java中的标识符(A A、fieldname B、super C、3number D、#number 3、已知如下定义:String s = "story"; 下面哪个语句不是合法的( C A、s += "books"; B、s = s + 100; C、int len = s.length; D、String t = s + “abc”; 4、如下哪个是Java中有效的关键字( C A、name

B、hello C、false D、good 5、下面的代码段执行之后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 6、定义一个类,必须使用的关键字是( B A、public B、class C、interface D、static 7、定义一个接口必须使用的关键字是(C

A、public B、class C、interface D、static 8、如果容器组件p的布局是BorderLayout,则在p的下边中添加一个按钮b,应该使用的语句是(C A、p.add(b; B、p.add(b,"North"; C、p.add(b,"South"; D、b.add(p,"North"; 9、声明并创建一个按钮对象b,应该使用的语句是(A A、Button b=new Button(; B、button b=new button(; C、Button b=new b(; D、b.setLabel(“确定”; 10、Frame对象默认的布局管理器是(B A、FlowLayout B、BorderLayout C、CardLayout

JAVA期末考试考卷及答案

《J A V A语言程序设计》期末考试模拟试题 一、单选择题(每小题2分,共10分) 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、在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( D )方 法来完成一些画图操作。 A. start( ) B. stop( ) C. init( ) D. paint( ) 4、不允许作为类及类成员的访问控制符的是( C )。 A. public B. private C. static D. protected 5、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为 前缀就可以调用它,该方法头的形式为( A )。 A. static void method( ) B. public void method( ) C. final void method( ) D. abstract void method( ) 二、填空题(每空格1分,共20分) 1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、 编译生成字节码和解释运行字节码。

MyApplet必须是 Applet 类的子类并且存储该源程序文件的文件名为MyApplet 。 3、如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译 器编译该源程序文件将产生 3 个文件名与类名相同而扩展名为 . class 的字节码文件。 4、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占 用 2 字节内存空间,这样,无论是中文字符还是英文字符,都是占 用 2 字节内存空间。 5、设 x = 2 ,则表达式 ( x + + )/3 的值是 1 。 6、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为 true 和 false 。 7、抽象(abstract)方法方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。最终(final)方法方法是不能被当前类的子类重新定义的方法。 8、创建一个名为 MyPackage 的包的语句是 package MyPackag , 该语句应该放在程序的位置为:应该在程序第一句。 9、设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是 120 。 int s = 0 ; for ( int i = 0 ; i < ; i + + ) if ( i % 2 = = 1 ) s += MyIntArray[i] ; 10、在Java程序中,通过类的定义只能实现单重继承,但通过接口的定义可以实现多重继承关系。

java期中考试题

2012—2013学年第2学期Java程序设计期中考试题 注意:注意:考试结束时,将该试题页保存为“学号+姓名”并单击文件,选“发送”。 单项选择题(共10小题,每题2分,共20分) java源程序经编译后形成得文件得扩展名就是( C ) A、、java B、、exe C、、class D、、javac 下列java标识符中不正确得就是( B ) A、示例1 B、123 C、Exam1 D、A_123 关于构造方法说法不正确得就是( C ) 构造方法名与类名相同且没有返回类型。 B、构造方法得作用就是完成类对象得初始化工作。 C、构造方法不可以被重载。 D、在创建一个新对象时,系统会自动调用该类得构造方法为新对象初始化。 下列关于访问修饰符说法中不正确得就是( C ) 缺省访问修饰符修饰得成员变量只能被同一个包中得其她类访问。 用protected修饰得成员变量可被该类自身、与它在同一个包中其她类与该类得子类所访问。 面向对象程序设计中鼓励将类得属性定义为private得,而将允许用户操作得方法定义成public得。 D、用private修饰得成员变量允许该类自身与其子类所访问。 下列说法中不正确得就是( B ) 若一个变量被修饰为final方法,则该变量成为常量。 在方法定义前加static修饰符表示该方法属于一个对象,而不属于类。 在方法定义前加final表示其子类不能对该方法进行重写。 static方法只能操作static变量且static变量与static方法都就是属于类得。 关于继承不正确得说法就是( C ) 子类与父类在同一个包当中,则子类可以继承其父类中非private得成员变量与方法。 子类与父类不在同一个包当中,则子类可以继承其父类中protected、public修饰得成员变量与方法。 子类与父类不在同一个包当中,则子类可以继承其父类中友好变量与方法。 使用super关键字可以调用父类得构造方法。

java期末考试试题

山东师范大学成人高等教育期末考试试题 (时间:110分钟共100分) 年级:2014级专业:计算机科学与技术(高起本)考试科目:《Java技术》 试题类别: A (A/B/C) 考试形式__闭卷_(开、闭卷) 一、单项选择题(每小题1.5分,共30分) 1. 在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同, 传回的值也可以不相同。这种面向对象程序的特性称为()。 A、隐藏 B、覆盖 C、重载 D、Java不支持此特性 2. 以下关于构造函数的描述错误的是()。 A、构造函数的返回类型只能是void型。 B、构造函数是类的一种特殊函数,它的方法名必须与类名相同。 C、构造函数的主要作用是完成对类的对象的初始化工作。 D、一般在创建新对象时,系统会自动调用构造函数。 3. 下列哪些语句关于Java内存回收的说明是正确的? () A、程序员必须创建一个线程来释放内存 B、内存回收程序负责释放无用内存 C、内存回收程序允许程序员直接释放内存 D、内存回收程序可以在指定的时间释放内存对象 4. 若需要定义一个类域或类方法,应使用哪种修饰符?() A、static B、package C、private D、public 5. 有以下方法的定义,请选择该方法的返回类型()。 ReturnType method(byte x, double y){ return (short)x/y*2;} A、byte B、short C、int D、double 6. 编译运行以下程序后,关于输出结果的说明正确的是() public class Conditional{ public static void main(String args[ ]){ int x=4; System.out.print ln(“value is “+ ((x>4) ? 99.9:9));} } A.输出结果为:value is 99.9 B.输出结果为:value is 9 C.输出结果为:value is 9.0 D.编译错误 7. 执行完以下代码int [ ] x = new int[10];后,以下哪项说明是正确的() A.x[9]为0 B.x[9]未定义C.x[10]为0 D.x[0]为空 8. 关于以下程序段,正确的说法是() 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(“.equals() is succeeded”); A.行4与行6都将执行B.行4执行,行6不执行 C.行6执行,行4不执行C.行4、行6都不执行 9. 以下程序的运行结果是:() 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 2 2 B.2 3 3 C.2 2 3 D.3 4 4 10. 下列哪一个关键字用于实现接口来定义类?() A、extends B、implements C、abstract D、interface 11. 设x为float型变量,y为double型变量,a为int型变量,b为long型变量,c为char型变量,则表达式x+y*a/x+b/y+c的值为( )类型。 A、int B、long C、double D、char 12. 欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的?() A、ArrayList myList=new Object(); B、List myList=new ArrayList(); C、ArrayList myList=new List(); D、List myList=new List(); 13. 指出正确的表达式() A、byte=128; B、Boolean=null; C、long l=0xfffL; D、double=0.9239d; 14. 指出下列程序运行的结果() 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'; } }//Example结束 A、good and abc B、good and gbc C、test ok and abc D、test ok and gbc 15. 运行下列程序, 会产生什么结果() public class X extends Thread implements Runnable{ public void run(){ System.out.println("this is run()"); } public static void main(String args[]) { Thread t=new Thread(new X()); t.start(); } } //X结束 A、第一行会产生编译错误 B、第六行会产生编译错误 C、第六行会产生运行错误 D、程序会运行和启动 16. File类是IO包中唯一表示磁盘文件信息的对象,它定义了一些与平台无关的方法来操纵文件。通过调用File类提供的各种方法,我们能够创建、删除文件、重命名文件、判断文件的读写权限及是否存在,设置和查询文件的最近修改时间等。下面的代码片段实现的是什么功能?( ) 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 17. 阅读Shape和Circle两个类的定义。在序列化一个Circle的对象circle到文件时,下面哪个字段会被保存到文件中?( ) 第1页共四页第2页共四页

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