文档库 最新最全的文档下载
当前位置:文档库 › java考试题库第六章

java考试题库第六章

java考试题库第六章
java考试题库第六章

第六章异常和异常处理

一选择题

6-1.下列关于异常的描述中,错误的是(B)

A.异常是一种经过修正后程序仍可执行的错误

B.异常是一种程序在运行中出现的不可恢复执行的错误

C.不仅Java语言有异常处理,C++语言也有异常处理

D.出现异常不是简单结束程序,而是执行某种处理异常的代码,设法恢复程序的执行

6-2.下列关于异常处理的描述中,错误的是(D)

A.程序运行时异常由Java虚拟机自动进行处理

B.使用try-catch-finally语句捕获异常

C.使用throw语句抛出异常

D.捕获到的异常只能用当前方法中处理,不能用其他方法中处理

6-3.下列关于try-catch-finally语句的描述中,错误的是(A)

A.try语句后面的程序段将给出处理异常的语句

B.catch()方法跟在try语句后面,它可以是一个或多个

C.catch()方法有一个参数,该参数是某种异常类的对象

D.finally语句后面的程序段总是被执行的,该语句起到提供统一接口的作用

6-4.下列关于抛出异常的描述中,错误的是(D)

A.捕捉到发生的异常可在当前方法中处理,也可以抛到调用该方法的方法中处理

B.在说明要抛出异常的方法时应加关键字throw<异常列表>

C.<异常列表>中可以有多个用逗号分隔的异常

D.抛出异常的方法中要使用下述抛出异常语句:throw<异常名>;其中,<异常名>是异常类的类名6-5.下列关于用户创建自己的异常描述中,错误的是(D)

A.创建自己的异常应先创建一个异常类

B.为实现抛出异常,须在可能抛出异常的方法中书写throw语句

C.捕捉异常的方法是使用try-catch-finally语句格式

D.使用异常处理不会使整个系统更加安全和稳定

二判断题

6-1.异常是一种特殊的运行错误的对象。(对)

6-2.异常处理可以使整个系统更加安全和稳定。(对)

6-3.异常处理是在编译时进行的。(错)

6-4.Java语言中异常类都是https://www.wendangku.net/doc/db3116341.html,ng.Throwable的子类。(对)

6-5.Throwable类有两个子类:Error类和Exception类。前者由系统保留,后者供应用程序使用。(对)

6-6.异常通常是指Error类和Exception类。(错)

6-7.Exception类只有一个子类为RuntimeException。(错)

6-8.在异常处理中,出现异常和抛出异常是一回事。(错)

6-9.运行时异常是在运行时系统检测并处理的。(错)

6-10.使用try-catch-finally语句只能捕获一个异常。(错)

6-11.捕获异常时try语句后面通常跟有一个或多个catch()方法用来处理try块内生成的异常事件。(对)6-12.使用finally语句的程序代码为该程序提供一个统一的的出口。(对)

6-13.抛出异常的方法说明中要加关键字throws,并在该方法中还应添加throw语句。(对)

6-14.创建异常类时要给出该异常类的父类。(对)

6-15.如果异常类没有被捕获将会产生不正常的终止。(对)

三分析程序的输出结果

6-1.Exer6_1.java

public class Exer6_1

{

public static void main(String args[] )

{

int x=10,y=0;

int z=x/y;

System.out.println(“z=“+z);

}

}

该程序运行后,输出结果如图所示:

D:\JAV A\XT>java Exer6_1

Exception in thread”main”https://www.wendangku.net/doc/db3116341.html,ng.ArithmeticException:/by zero At Exer6_1.main

6-2.Exer6_2.java

public class Exer6_2

{

public static void main(String args[])

{

int array1[]={6,0,8};

for(int i=0;i

{

try

{

int d=100/array[i];

System.out.println(“\t 正常:d=“+d);

}

catch(ArithmeticException e)

{

System.out.println("\t算术异常");

}

catch(ArrayIndexOutOfBoundsException e)

{

System.out.println("\t下标越界异常");

}

finally

{

System.out.println("\t异常处理结束!\n");

}

}

}

运行该程序后,输出如图所示

D:\JA V A\XT>java Exer6_2

正常:d=16

异常处理结束!

算术异常!

异常处理结束!

正常:d=12

异常处理结束!

下标越界异常!

异常处理结束!

6-3 Exer6_3.java

public class Exer6_3

{

public static void main(String args[])

{

int array1[]={6,0,8};

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

{

try

{

int d=100/array1[i];

System.out.println("\t正常:d="+d);

}

catch(RuntimeException e)

{

System.out.println("\t异常:"+e.toString());

}

finally

{

System.out.println("\t异常处理结束!\n");

}

}

}

}

运行该程序后,输出结果如图所示:

D:\JA V A\XT>java Exer6_3

正常:d=16

异常处理结束!

异常:https://www.wendangku.net/doc/db3116341.html,ng.ArithmeticException:/by zero

异常处理结束!

正常:d=12

异常处理结束!

异常:https://www.wendangku.net/doc/db3116341.html,ng.ArrayIndexOutOfBoundsExcepiton:3

异常处理结束!

6-4 Exer6_4.java

public class Exer6_4

{

public static void Test()

{

int a[]=new int[3];

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

{

try

{

a[i]=i+5;

System.out.println("\t正常:a["+i+"]="+a[i]);

}

catch(ArrayIndexOutOfBoundsException e)

{

System.out.println("\t异常:+e.toString()");

throw e;

}

}

}

public static void main(String args[])

{

try

{

Test();

}

finally

{

System.out.println("\t异常处理结束!\n")

}

}

}

运行该程序后,输出结果如图:

D:\JA V A\XT>java Exer6_4

正常:a[0]=5

正常:a[1]=6

正常:a[2]=7

异常:https://www.wendangku.net/doc/db3116341.html,ng.ArrayIndexOutOfBoudsException: 3

异常处理结束!

Exception in thread “main” https://www.wendangku.net/doc/db3116341.html,ng.ArrayIndexOutOfBoundsExcepiton:3 at Exer6_4.Test

at Exer6_4.main

6-5 Exer6_5.java

class myException extends Exception

{

static int a=0

myException(String s)

{

super(s);

a++;

}

String show()

{

return"自定义异常出现的次数:"+a;

}

}

Public class Exer6_5

{

static void Test() throws myException

{

myException e;

e=new myException("自定义异常\n");

throw e;

}

Public static void main(String args[])

{

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

{

try

{

Test();

}

catch(myException e)

{

System.out.println(e.show());

System.out.println(e.toString);

}

}

}

}

运行该程序后,输出结果如图所示:

D:\JA V A\XT>java Exer6_5

自定义异常出现的次数:1

myException:自定义异常

自定义异常出现的次数:2

myException:自定义异常

自定义异常出现的次数:3

myException:自定义异常

5.简单回答题

6-1检测异常事件必须使用什么语句?

答:try语句

6-2catch()方法的作用是什么?该方法用户能否调用?

答:用来处理try块中检测出的异常事件。

6-3catch()方法中异常类型应与什么相符?

答:与生成的异常事件类型相符。

6-4异常示被捕获到将会出现什么现象?

答:try语句后边的惯常处理代码将不被执行,通常使用finally语句提供一个统一出口。

6-5在一个try语句的程序代码块中可以捕获多个异常吗?

答:可以

6-6使用throw语句抛出的是类型还是对象?

答:抛出的是对象。

6-7捕获到的异常还可以再抛出吗?

答:可以。

6-8Finally语句块中的代码何时被执行?

答:在异常事件处理的方法catch()执行后执行。

6-9语句throw的作用是什么?

答:抛出所检测到的异常。

6-10异常类Exception的父类是什么?

答:是Throwable类。

6.编程题

6-1编程实现下述异常,并输出显示适当的错误信息。

(1)数组下标越界异常ArrayIndexOutOfBoundsException类型。例如,

char ch[]=new char[5];

ch[5]='m';//产生该类型异常

(2)对象转换异常ClassCastException类型。

例如,将对象a1转换为对象a2时,如果a1和a2不是同类,并且a1也不是a2 的子类对象时,则产生该类型异常。

(3)引用空对象的变量和方法时产生NullPointerException异常类型。例如,

int ar[]=null;

System.out.println(ar.length);//产生该类异常

(1)关于数组下标越界异常ArrayIndexOutOfBoundsException请参照本书本章例6.1的程序,请读者自行编写。

(2)下面关于对象转换的例子。程序内容如下:

public class pro6_1

{

public static void main(String args[])

{

try{

M();

}

catch(ClassCastException e)

{

System.out.println("对象转换异常");

}

}

static void M()throws ClassCastException

{

Object obj=new Object();

int arr[]=(int[])(obj);

}

}

(3)编写处理异常程序如下:

public class pro6_2

{

public static void main(String args[])

{

try{

int ar[]=null;

System.out.println(ar.length);

}

catch(NullPointerException e)

{

System.out.println("Exception:"+e);

}

}

}

运行该程序后,输出显示结果如下:

Exception:https://www.wendangku.net/doc/db3116341.html,ng. NullPointerException.

6-2 定义一个circle类,其中有求面积的方法,当圆的半径小于0时,抛出一个自定义的异常。编程实现之:

程序内容如下;

class Circle extends Exception

{

double r;

Circle()

{ }

Circle(double i)

{r=i;}

public double getr()

{return r;}

public double Area()

{

return 3.1415*r*r;

}

}

public class pro6_3

{

public static void main(String args[])

{

Circle c=new Circle(-3.0);

try

{

if(c.getr()<0)

{

Circle ee=new Circle();

throw ee;

}

System.out.println(c.Area());

}

catch(Circle e)

{

System.out.println("自定义异常:"+e);

}

}

}

运行该程序后,输出显示如下结果:

自定义异常:Circle

如果将语句

Circle c=new Circle(-3.0);

必为

Circle c=new Circle(3.0);

输出结果如何?请读者上机试试。

6.5测试题

1.单选题

6-1下列关于异常和异常类的描述中,错误的是()。

A.异常是某种异常类的对象

B.异常类代表一种异常事件

C.异常对象中包含有发生异常事件的类型等重要信息

D.对待异常和处理就是简单地结束程序

6-2下列关于异常处理的描述中,错误的是()。

A.程序运行时出现的异常是通过系统默认的异常处理程序进行处理的

B.在程序中可以使用try-catch语句捕捉异常和处理异常事件

C.对于捕获的异常只能在当前方法中处理

D.使用throw语句可将异常抛出到调用当前方法的方法中处理

6-3下列关于用户创建自己的异常的描述中,错误的是()。

A.为了保证系统的稳定性,用户可以创建自己的异常和异常类

B.创建的异常类必须是Exception类的子类

C.在创建的异常类的类体中可以定义或重载其的属性和方法、

D.用户自定义的异常必须使用throw语句进行抛出

2.判断题

6-1 异常不是致命错误。

6-2 异常类Exception是Throwable类的子类,该类还派生出许多子类。

6-3 catch()方法是用来捕捉和处理异常的,可使用多个该方法,其异常类型的先后顺序是无关的。6-4 用户在创建自己的异常时,通常在通过throw语句抛出异常。

6-5finally语句的程序段无论发生异常事件与否,它都是被执行的。

3.分析程序的输出结果

6-1程序内容如下:

public class test6_1

{

public static void main(String args[])

{

int arr[]={1,3,5,7,9};

int i=0;

while(i<6)

{

try

{

System.out.println(arr[i++]+1);

}

catch(ArrayIndexOutOfBoundsException e)

{

System.out.println("下标越界");

}

finally

{

System.out.println("ok");

}

}

}

}

6-2程序内容如下:

class myException extends Exception

{

myExcepiton(String s)

{

super(s);

}

}

public class test6_2

{

public static void main(String args[])

{

try

{

throw new myException("我自定义的异常");

}

catch(myException e)

{

e.printStackTrace();

}

}

}

4.编程题

读者自己定义一种异常类,并编程捕捉某种异常,输出异常信息。

5.简答题

已知:下列try-catch-finally语句块中<语句2>将会引起一个异常,试回答下述问题。

try{

<语句1>

<语句2>

<语句3>

}

catch(<异常类名>e1){…}

catch(<异常类名>e2){…}

finally

{…}

<语句4>

(1)<语句3>会执行吗?

(2)如果异常被捕捉了,finally语句被执行吗?

(3)如果异常没被捕捉,finally语句被执行吗?

(4)无论异常是否被捕捉,<语句4>都被执行吗?

大学期末考试Java题库

1.下面程序的运行结果是()。 public class E3{ public static void main(String args[]){ String s="大大"; char a=s.charAt(2),b=s.charAt(4); System.out.print(a); System.out.println(b); } } 2.下面程序的运行结果是()。 import java.util.*; public class LinkedListExample { public static void main(String args[]){ LinkedList linkedlist = new LinkedList(); linkedlist.add(new Integer(1)); linkedlist.add(new Integer(2)); linkedlist.add(new Integer(3)); linkedlist.add(new Integer(4)); linkedlist.add(new Integer(5)); System.out.println("The original contents of the linkedlist is: "); System.out.println(linkedlist); linkedlist.add(2,"hello"); linkedlist.addFirst("First"); linkedlist.addLast("Last"); System.out.println("After adding elements,the linkedlist is: "); System.out.println(linkedlist); } } 答: 3.下面程序的运行结果是()。 public class TestArray { public static void main(String args[]) { int i, j; int a[] = { 5, 9, 6, 8, 7 }; for (i = 0; i < a.length-1; i++) { int k = i; for (j = i; j < a.length; j++) if (a[j] < a[k]) k = j; int temp = a[i]; a[i] = a[k]; a[k] = temp; }

三本院校专业

一、公立三本排名 1 华中科技大学武昌分校湖北 2 北京师范大学珠海分校广东 3 华中科技大学文华学院湖北 4 浙江大学城市学院浙江 8 吉林大学珠海学院广东 10 武汉科技大学城市学院湖北 11 浙江大学宁波理工学院浙江 12 武汉理工大学华夏学院湖北 13 南京大学金陵学院江苏 14 中山大学南方学院广东 15 武汉大学东湖分校湖北 17 武汉科技大学中南分校湖北 20 华南理工大学广州汽车学院广东 23 北京理工大学珠海学院广东 24 广州大学华软软件学院广东 25 华中师范大学汉口分校湖北 28 电子科技大学中山学院广东 35 广东工业大学华立学院广东 37 中南财经政法大学武汉学院湖北41 复旦大学上海视觉艺术学院上海

广东三本 学校名称专业 排名 1吉林大学珠海学院电子信息系:电子信息科学与技术专业,微电子科学与工程 专业,测控技术与仪器专业,通信工程专业,自动化专业, 建筑血系城市规划专业,物流与信息管理系物流管理专业, 信息管理与信息系统专业,电子商务专业 2北京师范大学珠海分校信息技术学院的数字媒体技术系,物流学院的物流管理专 业、物流工程专业 3北京理工大学珠海学院信息学院的信息工程、自动洗、电气工程及其自动化; 计算机学院的软件工程、数字媒体技术、网络工程; 化工与材料学院的环境工程(各类环境污染防治与控制工 程、资源保护、环境监测、环境评价、环境规划与管理等)、 生物工程(生物工程和生物制药领域产品的研发、工艺设计、 生产管理及检验分析)、安全工程(各生产领域的安全管理 和监督、安全工程设计和风险评价与控制)、食品科学与工 程(食品生产工艺设计和食品的生产及管理,食品检验和食 品安全管理)、应用化学(制药工程和技术及医药产品、化 妆品、保健品的设计与开发,药品及日化产品的检验、管理 与应用) 商学院的物流管理(国际物流)(培养具备现代港航物流管 理理论基础和港航物流实务运作能力的高级物流管理人才) 会计与金融学院的会计学、财务管理、信用管理(以信用风 险管理为核心,培养在金融机构、企事业单位和政府部门, 从事信用风险分析、应用计量与管理的应用型人才)、金融 工程(培养数理统计基础扎实,从事金融业务经营与管理以 及金融衍生品运作的应用性和复合型专业人才) 4电子科技大学中山学院通信工程、电子信息工程、环境工程、网络工程、材料化学5华南理工大学广州学院车辆工程、汽车服务工程专业、物流工程专业、交通工程专 业、电力工程与管理专业、电子信息工程专业、工商管理专 业中的运作与物流管理方向、财务管理专业、 6中山大学南方学院工商管理系的物流管理; 经济学与商务管理系的旅游管理; 8广东技术师范学院天河学院电气与电子工程学院的物联网工程(本专业培养德智体等方

Java程序员认证考试题库

第一部分 基础知识练习 目标 本章对应于《学生指南》各章的内容分别提供了练习题集,包括: ●第一章Java入门 ●第二章数据类型和运算符 ●第三章流程控制与数组 ●第四章封装 ●第五章继承 ●第六章抽象类与接口 ●第七章多态 ●第八章异常 ●第九章多线程机制 ●第十章输入输出流 ●第十一章使用泛型和集合框架 ●第十二章基于Swing的图形用户界面(GUI)设计 ●第十三章Java事件驱动编程

第一章练习题(Java入门) (C)1.下列哪项不是JDK所包含的内容?(选一项)A.Java编程语言 B.工具及工具的API C.Java EE扩展API D.Java平台虚拟机 2.下列关于JDK、JRE和JVM的描述。哪项正确?A.JDK中包含了JRE,JVM中包含了JRE B.JRE中包含了JDK,JDK中包含了JVM C.JRE中包含了JDK,JVM中包含了JRE D.JDK中包含了JRE,JRE中包含了JVM 3.下列哪个工具可以编译java源文件? A.javac B.jdb C.javadoc D.junit 4.JDK工具javadoc的作用是哪项? A.生成Java文档 B.编译Java源文件 C.执行Java类文件 D.测试Java代码 5.以下哪些包是Java标准库中常用的包?(选三项)A.java.lang B.javax.servlet .http C.j ava. io D.java.sql

6.使用JDK工具生成的Java文档的文件格式是? A.XML格式 B.自定义格式 c.二进制格式 D.HTML格式 (AC)7.以下关于JVM的叙述,哪项正确?(选两项) A.JVM运行于操作系统之上,它依赖于操作系统 B.JVM运行于操作系统之上,它与操作系统无关 C.JVM支持Java程序运行,它能够直接运行Java字节码文件D.JVM支持Java程序运行,它能够直接运行Java源代码文件 8.以下关于支持Java运行平台的叙述,哪项错误? A.Java可在Solaris平台上运行 B.Java可在Windows平台上运行 C.Java语言与平台无关。Java程序的运行结果依赖于操作系统D.Java语言与平台无关。Java程序的运行结果与操作系统无关 (B)9.以下关于Applet和Java程序之间关系的叙述,哪项错误? A.-个Applet就是一段Java程序 B.Applet是一种特殊的Java程序,它需要运行在Web服务器上C.Applet是一种特殊的Java程序,它需要运行在Web浏览器上D.Applet是一种Java SE平台的应用程序 (AD)10.以下关于Java HotSpot的描述,哪两项错误?(选两项)A.Java HotSpot是一种热编译技术,在编译Java源程序时会被使用B.Java HotSpot是一种热编译技术,在运行Java代码时会被使用C.Java HotSpot是一种热编译技术,它只对程序的部分字节码进行优化D.Java HotSpot是一种热编译技术,它会对程序的全部字节码进行优化

大学java期末试卷2份(含答案)

Java大学考试试卷 一、选择题(每题2分,共30分) 1、Java中main()函数的值是。 A、 String B、int C、char D、void 2、如下字串是Java中的标识符。 A、 fieldname B、super C、3number D、#number 3、下面的代码段中,执行之后i 和j 的值是。 int i = 1; int j; j = i++; A、 1, 1 B、1, 2 C、2, 1 D、2, 2 4、已知表达式int m[] = {0, 1, 2, 3, 4, 5, 6 };下面表达式的值与数组下标量总数相等。 A、 m.length() B、m.length C、m.length()+1 D、m.length+1 5、当浏览器返回到新URL的包含applet 的页面时调用以下函数。 A、 init() B、start() C、stop() D、destroy() 6、以下方法用于定义线程的执行体。 A、 start() B、init() C、run() D、main() 7、如果类中的成员变量可以被同一包访问,则使用如下约束符。 A、 private B、public C、protected D、final 8、以下约束符可用于定义成员常量。 A、 static B、final C、abstract D、No modifier can be used 9、下面方法与applet的显示无关。 A、 update() B、draw() C、repaint() D、paint() 10、请问如下方法可以将MenuBar加入Frame中。 A、 setMenu() B、setMenuBar() C、add() D、addMenuBar() 11、下面不是Java中的容器。 A、 ScrollPane B、Canvas C、Dialog D、Applet 12、下面的程序段创建了BufferedReader类的对象in,以便读取本机d盘my文件夹下的文件1.txt。File 构造函数中正确的路径和文件名的表示是。 File f=new File(填代码处); file=new FileReader(f); in=new BufferedReader(file); A) "1.txt" B) "d:\\my\\1" C) "d:\\my\\1.txt" D) "d:\ my\1.txt" 13、有整型数组:int[] x={12,35,8,7,2};,则调用方法Arrays.sort(x)后,数组x中的元素值依次是。A) 2 7 8 12 35 B) 12 35 8 7 2 C) 35 12 8 7 2 D) 8 7 12 35 2 14、下面的程序段执行后输出的结果是。 StringBuffer buf=new StringBuffer("Beijing2008"); buf.insert(7,"@"); System.out.println(buf.toString()); A) Beijing@2008B) @Beijing2008 C) Beijing2008@ D) Beijing#2008 15、.下面表达式可用得到x和y的最大值。 A) x>y?y:x B) xy?(x+y):(x-y) D) x==y?y:x; 二、多选题(每题至少有一个正确答案,多选少选都不给分,每题2分,共10分) 16、下面赋值语句是合法的。 A、float a = 2.0 B、double b = 2.0 C、int c = 2 D、long d = 2 17、下面语句是创建数组的正确语句。 A、 float f[][] = new float[6][6]; B、float []f[] = new float[6][6]; C、float f[][] = new float[][6]; D、float [][]f = new float[6][6]; 18、Java中如下约束符是正确的。 A、 private B、public C、protected D、protect 19. 下面事件监听器在Java中有事件适配器。 A、 MouseListener B、KeyListener C、ActionListener D、WindowListener 20、已知如下的命令执行 java MyTest a b c,语句是正确的。 A、 args[0] = "MyTest a b c" B、args[0] = "MyTest" C、args[0] = "a" D、args[1]= 'b' 填空题(每空格2分,共20分) 1. 创建类的对象时,使用运算符__________给对象分配内存空间。 2. 定义类的构造方法不能有返回值类型,其名称与____ _名相同。

java实验报告完整版

实验报告 (计算机与信息工程学院实验中心) 学期: 2014-2015 课程名称:《Java程序设计实验》 班级:信息1202 姓名:方逸梅 学号: 31 指导老师:费玉莲

《Java程序设计》 独立实验教学安排 一、实验的教学方式、安排及实验环境 (一)教学方式 对照本课程的实验教材,实验一至实验十一,由教师提示实验原理、方法、步骤等内容,在教师的指导下,学生独立完成程序设计及调试工作。实验十二的内容由学生自行设计完成。 (二)教学安排 学时数:30课时 学时安排:每次实验3学时,从学期第五周开始,共十次上机实验。 (三)实验环境 实验环境为JDK 。 (四)具体安排 地点:信息大楼实验室。 辅导:每个班次一名辅导老师,原则上由任课老师担任。 登记:实验完成,由辅导老师登记实验纪录。 学生:实验做完,完成实验报告内容,并在学期末上交实验册。 老师:批改实验,成绩与平时成绩一起占期末的30%。 二、实验的具体内容和要求 见实验报告。

浙江工商大学 计算机与信息工程学院实验报告(1)日期:地点:成绩: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 实验目的、实验原理和内容: 一、实验目的:熟悉Java开发环境及简单程序Java设计。 二、实验原理:SDK 的下载与安装,设置环境变量,安装java 虚拟机,使用Eclipse,编译Java 源程序,运行Java 程序。 三、实验内容及要求: 1.下载、安装并设置Java SDK 软件包。 2.熟悉Eclipse 编辑软件。 3.掌握运行Java 程序的步骤。 4.分别编写Application和Applet程序,显示字符串”Hello Java!欢迎使用!”。 要求:请同学把预备知识、步骤、程序框图、调试好的程序及存在的问题写在下面(不够可以附页)。 程序一 public class hello { public static void main(String[] args) { for(int i=0;i<=4;i++) { "Hello java! 欢迎使用!"); } }

大学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分)

AnjoyoJava04章节考试题

第四章考试题 一、选择题:(每题3分,共20题) 1.下列关于数组的描述不正确的是()。 A、数组是用来存储一组相同数据类型数据的。 B、数组是编程语言中非常常见的一种数据结构。 C、数组可以通过整型索引访问数组中的每一个值。 D、在一个数组里面,既允许用于存储一种数据类型的数据,也允许存储多种数据类型 数据。 2.下列关于数组定义错误的是()。 A、type[] var_name; B、int[10] a; C、String student[]; D、boolean[] booleanArray; 3.下列关于数组的说法中不正确的是()。 A、定义数组时必须分配内存。 B、数组的初始化操作分为静态初始化和动态初始化。 C、数组元素可以是基本数据类型、对象或其他数组。 D、数组是最简单的复合数据类型,是一系列数据的集合。 4.设有下列数组定义语句: int a[] = {1, 2, 3}; 则对此语句的叙述错误的是()。 A、定义了一个名为a的一维数组。 B、a数组有3个元素。 C、a数组元素的下标为1~3。 D、数组中每个元素的类型都是整数。 5.给出下面程序代码: byte[] a1, a2[]; byte a3[][]; byte[][] a4; 下列数组操作语句中哪一个是不正确的?() A、a2 = a1 B、a2 = a3 C、a2 = a4 D、a3 = a4 6.执行语句:int[] x = new int[20];后,下面说法正确的是()。 A、x[19]为空 B、x[19]未定义 C、x[19]为0 D、x[0]为空 7.已知有定义:String s="I love",下面正确的表达式是()。 A、s += "you"; B、char c = s[1]; C、int len = s.length; D、String s = s.toLowerCase(); 8.下面代码运行后的输出结果为()。 public class Test04_01 { public static void main(String[] args) { AB aa = new AB(); AB bb; bb = aa; System.out.println(bb.equals(aa)); } }

互联网数据库00911试题

浙江工商大学2007年5月学分互认课程考试 互联网数据库试题 课程代码:00911 一、单项选择题(本大题共15小题,每小题2分,共30分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 1.范式(Norma form)是指() A.规范化的等式 B.规范化的关系 C.规范化的数学表达式 D.规范化的抽象表达式 2.在数据字典中,能同时充当数据流的来源和去向的是() A.数据记录 B.数据通路 C.数据存储 D.数据结构 3.以下关于外码和相应的主码之间的关系,正确的是() A.外码并不一定要与相应的主码同名 B.外码一定要与相应的主码同名 C.外码一定要与相应的主码同名而且唯一 D.外码一定要与相应的主码同名,但不一定唯一 4.SQL语言中,外模式对应于() A.视图和部分基本表 B.基本表 C.存储文件 D.物理磁盘 5.在传输表单数据时,跟在http header后有一专门的数据段,这个数据段包含了在表单中输入的数据,它一起被发送给Web服务器,这种传递方法是() A.GET方法 B.POST方法 C.PUT方法 D.REP方法 6.下列关于JDBC的叙述中,正确的是() A.JDBC是执行SQL语句的Java API B.JDBC是执行Java程序的Java API C.JDBC是执行SQL语句的Java网关接口 D.JDBC是执行CGI程序的Java API 7.对数据库模式进行规范化处理,是在数据库设计的() 00911# 互联网数据库试题第1 页(共4 页)

A.需求分析阶段 B.概念设计阶段 C.逻辑设计阶段 D.物理设计阶段 8.以下关于关系数据库中型和值的叙述,正确的是() A.关系模式是值,关系是型 B.关系模式是型,关系的逻辑表达式是值 C.关系模式是型,关系是值 D.关系模式的逻辑表达式是型,关系是值 9.现实世界中事物在某一方面的特性在信息世界中称为() A.实体 B.实体值 C.属性 D.信息 10.记载数据库系统运行过程中所有更新操作的文件称为() A.更新文件 B.后备文件 C.日志文件 D.数据文件 11.一个事务中所有对数据库操作是一个不可分割的操作序列,这称为事务的() A.原子性 B.一致性 C.隔离性 D.持久性 12.关系代数中,传统的集合运算包括并、差、交和______四种运算。() A.等值连接 B.F连接 C.自然连接 D.笛卡儿积 13.成员Java.sql.ResultSetMetaData属于JDBC中的() A.普通Java JDBC类 B.Java JDBC接口类 C.Java JDBC异常类 D.Java JDBC数据传输类 14.在下列几种故障中,不破坏数据库的是() A.计算机病毒发作 B.突然停电 C.瞬时的强磁场干扰 D.磁盘介质损坏 15.加在关系变化前后状态上的限制条件叫做() A.静态关系约束 B.静态元组约束 C.动态关系约束 D.动态元组约束 二、简答题(本大题共6小题,每小题5分,共30分) 1.简述视图的基本特征。 00911# 互联网数据库试题第2 页(共4 页)

java考试题库第五章

5-1 下列关于容器的描述中,错误的是D A.容器是由若干个组建和容器组成的 B.容器是对图形界面中界面元素的一种管理 C.容器是一种对指定宽和高的矩形范围 D.容器都是可以独立的窗口 5-2 下列界面元素中,不是容器的是A A.List B.Frame C.Dialog D.Panel 5-3 下列关于实现图形用户界面的描述中,错误的是D A.放在容器中的组件首先要定义,接着要初始化 B.放在容器中的多个组件是要进行布局的,默认的布局策略是FlowLayout C.容器中所有组件都是事件组件,都可以产生事件对象 D.事件处理是忧监听者定义的方法来实现的 5-4 下列关于组件类的描述中,错误的是A A.组件类中包含了文本组件类(TextComponent)和菜单组件类(MenuComponent) B.标签(Label)和按钮(Button)是组件类(Component)的子类 C.面板(Panel)和窗口(Window)是容器类(Container)的子类 D.文本框(TextField)和文本区(TextArea)是文本组件类(TextComponent)的子类 5-5 在对下列语句的解释中,错误的是C but.addActionListener(this); A.but是某种事件对象,如按钮事件对象 B.t his表示当前容器 C.A ctionListener是动作事件的监听者 D.该语句的功能是将but对象注册为this对象的监听者 5-6 所有事件类的父类是C A.ActionEvent B.AwtEvent C.KeyEvent D.MouseEvent 5-7 所有GUI标准组件类的父类是C A.Buttom B.List C.Component D.Container 5-8 下列各种布局管理器中Window类、Dialog类和Frame类的默认布局是C A.FlowLayout B.CardLayout C.BorderLayout D.GridLayout 5-9 在下列各种容器中,最简单的无边框的又不能移动和缩放的只能包含在另一种容器中的容器是D A.Window B.Dialog C.Frame D.Panel 5-10 下列关于菜单和对话框的描述中,错误的是C A.Frame容器是可以容纳菜单组件的容器 B.菜单条中可包含若干个菜单,菜单中又可包含若干菜单项,菜单项中还可包含菜单子项 C.对话框与Frame一样都可作为程序的最外层容器 D.对话框内不含有菜单条,它由Frame弹出

中南民族大学《Java语言程序设计》期末试卷A卷

科目序号:6002 A卷 《Java语言程序设计》期末试卷 (试卷总分:100分,考试时间:120分钟,答案写在答卷纸上) 一.判断题(每题1分,共10分) 1.无论Java源程序包含几个类的定义,若该源程序文件以A.java命名,编译后生成的都只有一个名为A的字节码文件。(X )2.Java的各种数据类型所占用的内存长度与具体软硬件环境有关。(X )3.静态初始化器是在其所属的类加载内存时由系统自动调用执行的方法。(O )4.与C语言不同的是,Java语言中的数组元素下标总是从1开始。(X )5.在Java的方法中定义一个常量要用const关键字。(X )6.Java有两类程序:Java Application和Java Applet,其中Java Applet程序只能在图形界面中工作,而Java Application程序只能在字符界面中工作。(X)7.在异常处理中总是将可能产生异常的语句放在try块中,用catch子句去处理异常,而且一个try块之后只能对应一个catch语句。(X )8.程序员可以不必释放已创建的对象,因为Java有垃圾回收机制,内存回收程序可在指定的时间释放内存对象。(X )9.Java系统的标准输入对象是System.in,标准输出对象有两个,分别是标准输出System.out 和标准错误输出System.err。(O )10.即使一个类中未显式定义构造函数,也会有一个缺省的构造函数,缺省的构造函数是无参的,函数体为空。(O ) 二.单项选择题(每题2分,共40分) 1.编译Java Applet 源程序文件产生的字节码文件的扩展名为( B)。 A、java B、class C、html D、exe 2.Java application中的主类需包含main方法,main方法的返回类型是什么?(D ) A、int B、float C、double D、void 3.以下哪个方法用于定义线程的执行体?( C ) A、 start() B、init() C、run() D、synchronized() 4.当浏览器暂时离开含applet 程序的页面时,以下选项中的哪个方法将被执行?(D ) A、init() B、start() C、destroy() D、stop() 5.下面哪个不是Java中的容器? ( A ) A、Canvas B、ScrollPane C、Applet D、Dialog 6.以下标识符中哪项是不合法的( A ) A、const B、$double C、hello D、BigMeaninglessName 7.以下哪个关键字可以用来为对象加互斥锁?(D )

第四章 Java章节习题

1.分别编写两个方法,一个方法的功能是求一个double型数值的向右取整,另一个方法求double型数值的向左取整。数d的向右取整是大于等于d的最小整数,d的向左取整是小于等于d的最大整数。例如:5.3的向右取整是6而向左取整是5. 答: public class One{ static int right(double x) { if(x!=5) x=x+1; return (int)x; } static int left(double x) { return (int)x; } public static void main(String args[]) { System.out.println("5.3向左取整为:"+left(5.3)); System.out.println("5.3向右取整为:"+right(5.3)); } } 程序运行结果为: 2.写一个方法计算一个整数各位数字的和。使用下述的方法说明: public static int sumDigits(long n) 例如:sumDigits(276)返回2+7+6=15 。 提示:用求余运算符%分解数字,用除号/分离位数。例如334%10=4而334/10=33.用循环反复分解和分离每位数字,直到所有的位数都被分解。 答: public class Two{ public static int sumDigits(long n) { long sum=0,t; while(n!=0)

47 { t=n%10; n=n/10; sum+=t; } return (int)sum; } public static void main(String args[]) { System.out.println("334各个位数字之和为:"+sumDigits(334)); } } 程序运行结果为: 3. 编写程序,用Math类中的sqrt方法打印下表: Number SquareRoot .................................... 0 0.0000 2 1.4142 4 2.0000 6 2.4495 8 2.8284 10 3.1623 12 3.4641 14 3.7417 16 4.0000 18 4.2426 20 4.4721 答: public class Three{ public static void main(String args[]) { System.out.println("Number SquareRoot"); System.out.println(".................."); for(int i=0;i<=20;) 47

java实验报告完整版

实验报告 (计算机与信息工程学院实验中心) 学期: 2014-2015 课程名称: 《Java程序设计实验》 班级: 信息1202 姓名: 方逸梅 学号: 1212100231 指导老师: 费玉莲 《Java程序设计》 独立实验教学安排 一、实验的教学方式、安排及实验环境 (一)教学方式 对照本课程的实验教材,实验一至实验十一,由教师提示实验原理、方法、步骤等内容,在教师的指导下,学生独立完成程序设计及调试工作。实验十二的内容由学生自行设计完成。 (二)教学安排 学时数:30课时 学时安排:每次实验3学时,从学期第五周开始,共十次上机实验。 (三)实验环境 实验环境为JDK 1、6。

(四)具体安排 地点:信息大楼实验室。 辅导:每个班次一名辅导老师,原则上由任课老师担任。 登记:实验完成,由辅导老师登记实验纪录。 学生:实验做完,完成实验报告内容,并在学期末上交实验册。 老师:批改实验,成绩与平时成绩一起占期末的30%。 二、实验的具体内容与要求 见实验报告。

浙江工商大学 计算机与信息工程学院实验报告(1)日期:地点:成绩: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━实验目的、实验原理与内容: 一、实验目的:熟悉Java开发环境及简单程序Java设计。 二、实验原理:SDK 的下载与安装,设置环境变量,安装java 虚拟机,使用Eclipse,编译Java 源程序,运行Java 程序。 三、实验内容及要求: 1. 下载、安装并设置Java SDK 软件包。 2. 熟悉Eclipse编辑软件。 3.掌握运行Java 程序的步骤。 4.分别编写Application与Applet程序,显示字符串”Hello Java!欢迎使用!”。 要求:请同学把预备知识、步骤、程序框图、调试好的程序及存在的问题写在下面(不够可以附页)。 程序一 public class hello { public static void main(String[] args) { for(int i=0;i<=4;i++) { System、out、println("Hello java! 欢迎使用!"); } } } 结果示意图1

大学《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期末试卷2份(含答案)

浙江工商大学2006 /2007学年第一学期考试试卷课程名称:Java程序设计考试方式:闭卷完成时限:120分钟 班级名称:学号:姓名: 一、选择题(每题2分,共30分) 1、Java中main()函数的值是。 A、 String B、int C、char D、void 2、如下字串是Java中的标识符。 A、 fieldname B、super C、3number D、#number 3、下面的代码段中,执行之后i 和j 的值是。 int i = 1; int j; j = i++; A、 1, 1 B、1, 2 C、2, 1 D、2, 2 4、已知表达式int m[] = {0, 1, 2, 3, 4, 5, 6 };下面表达式的值与数组下标量总数相等。 A、 m.length() B、m.length C、m.length()+1 D、m.length+1 5、当浏览器返回到新URL的包含applet 的页面时调用以下函数。 A、 init() B、start() C、stop() D、destroy() 6、以下方法用于定义线程的执行体。 A、 start() B、init() C、run() D、main() 7、如果类中的成员变量可以被同一包访问,则使用如下约束符。 A、 private B、public C、protected D、final 8、以下约束符可用于定义成员常量。 A、 static B、final C、abstract D、No modifier can be used 9、下面方法与applet的显示无关。

A、 update() B、draw() C、repaint() D、paint() 10、请问如下方法可以将MenuBar加入Frame中。 A、 setMenu() B、setMenuBar() C、add() D、addMenuBar() 11、下面不是Java中的容器。 A、 ScrollPane B、Canvas C、Dialog D、Applet 12、下面的程序段创建了BufferedReader类的对象in,以便读取本机d盘my文件夹下的文件1.txt。File 构造函数中正确的路径和文件名的表示是。 File f=new File(填代码处); file=new FileReader(f); in=new BufferedReader(file); A) "1.txt" B) "d:\\my\\1" C) "d:\\my\\1.txt" D) "d:\ my\1.txt" 13、有整型数组:int[] x={12,35,8,7,2};,则调用方法Arrays.sort(x)后,数组x中的元素值依次是。 A) 2 7 8 12 35 B) 12 35 8 7 2 C) 35 12 8 7 2 D) 8 7 12 35 2 14、下面的程序段执行后输出的结果是。 StringBuffer buf=new StringBuffer("Beijing2008"); buf.insert(7,"@"); System.out.println(buf.toString()); A) Beijing@2008B) @Beijing2008 C) Beijing2008@ D) Beijing#2008 15、.下面表达式可用得到x和y的最大值。 A) x>y?y:x B) xy?(x+y):(x-y) D) x==y?y:x; 二、多选题(每题至少有一个正确答案,多选少选都不给分,每题2分,共10分) 16、下面赋值语句是合法的。 A、float a = 2.0 B、double b = 2.0 C、int c = 2 D、long d = 2 17、下面语句是创建数组的正确语句。 A、 float f[][] = new float[6][6]; B、float []f[] = new float[6][6]; C、float f[][] = new float[][6]; D、float [][]f = new float[6][6]; 18、Java中如下约束符是正确的。 A、 private B、public C、protected D、protect

java笔试题 第五套题

一、选择题 1、在下列选项中,哪个不是一个算法一般应该具有的基本特征______。 A、确定性 B、可行性 C、无穷性 D、拥有足够的情报 2、希尔排序法属于哪一种类型的排序法______。 A、交换类排序法 B、插入类排序法 C、选择类排序法 D、建堆排序法 3、下列关于队列的叙述中正确的是______。 A、在队列中只能插入数据 B、在队列中只能删除数据 C、队列是先进先出的线性表 D、队列是先进后出的线性表 4、对长度为N的线性表进行顺序查找,在最坏情况下所需要的比较次数为______。 A、N+1 B、N C、(N+1)/2 D、N/2 5、信息隐蔽的概念与下述哪一种概念直接相关______。 A、软件结构定义 B、模块独立性 C、模块类型划分 D、模拟耦合度 6、面向对象的设计方法与传统的的面向过程的方法有本质不同,它的基本原理是______。 A、模拟现实世界中不同事物之间的联系 B、强调模拟现实世界中的算法而不强调概念 C、使用现实世界的概念抽象地思考问题从而自然地解决问题 D、鼓励开发者在软件开发的绝大部分中都用实际领域的概念去思考 7、在结构化方法中,软件功能分解属于下列软件开发中的______阶段。 A、详细设计 B、需求分析 C、总体设计 D、编程调试 8、软件调试的目的是______。 A、发现错误 B、改正错误 C、改善软件的性能 D、挖掘软件的潜能 9、按条件f对关系R进行选择,其关系代数表达式为______。 A、

B、 C、бf(R) D、∏f(R) 10、数据库概念设计的过程中,视图设计一般有三种设计次序,以下各项中不对的是______。 A、自顶向下 B、由底向上 C、由内向外 D、由整体到局部 11、下面有关变量及其作用域的陈述______是不对的。 A、在方法里面定义的局部变量在方法退出的时候被撤销 B、局部变量也叫自动变量 C、在方法外面定义的实例变量在对象被构造时创建 D、在方法中定义的方法的参变量只要该对象被需要就一直存在 12、下面有关Java代码安全性的叙述______是不对的。 A、字节码校验器加载查询执行需要的所有类 B、运行时解释器执行代码 C、在运行时,字节码被加载,验证然后在解释器里面运行 D、类加载器通过分离本机文件系统的类和从网络导入的类增加安全性 13、给出下面的代码: public class Data{ public static void main (String args[]){ float f=0.0; f+=1.0; System.out.println(f); } } ______叙述是对的。 A、编译时将发生错误 B、编译时正确但是运行时出错 C、输出为1.0 D、输出为null 14、类的设计要求它的某个成员变量不能被外部类访问。应该使用下面的______修饰符获得需要的访问控制。 A、public B、no modifier C、protected D、private 15、假设以下代码 public class Parent { public int addValue( int a, int b) { int s; s = a+b;

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