Java期末练习题.doc_第1页
Java期末练习题.doc_第2页
Java期末练习题.doc_第3页
Java期末练习题.doc_第4页
Java期末练习题.doc_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一、 判断题。(每题1分,共15分)1Java程序对计算机硬件平台的依赖性很低。( )2Java语言具有较好的安全性和可移植性及与平台无关等特性。( )3Java程序是运行在Java虚拟机中的。( )4在运行字节码文件时,使用java命令,一定要给出字节码文件的扩展名.class。( )5Java程序中不区分大小写字母。( )6机器不能直接识别字节码文件,它要经过JVM中的解释器边解释边执行。( )7 Java的源代码中定义几个类,编译结果就生成几个以“.class”后缀的字节码文件。( )8在Java的方法中定义一个常量要用const关键字。 ( )9java语言中的数组元素只能是基本数据类型而不能为对象类型。( )10一个类只能有一个父类,但一个接口可以有一个以上的父接口。( )11实现接口的类不能是抽象类。( )12java的类不允许多重继承,但接口支持多重继承。 ( )13. 在子类的构造函数中,可以把Super()放到任何位置。( )14构造函数用于创建类的实例对象,构造函数名应与类名相同,返回类型为void。( )15拥有abstract方法的类是抽象类,但抽象类中可以没有abstract方法。( )16用abstract修饰的类必须被继承。( )17Java语言中,构造方法是不可以继承的。( )18类中说明的方法可以定义在类体外。( )19所有的鼠标事件都由MouseListener监听接口的监听者来处理。( )20通过继承,父类中的保护成员在派生类中不能被直接访问。( )21类的public类型的成员变量不可以被继承。( )22 Java 语言不允许同时继承一个类并实现一个接口。( )23创建对象时系统将调用适当的构造方法给对象初始化。( )24Java中类的构造函数只能有一个。( )25class是定义类的惟一关键字。( )26子类可以继承父类所有的成员变量及成员函数。( )27Java类中不能存在同名的两个成员函数。( )28实现一个接口,则在类中一定要实现接口中的所有方法。( )29在Swing用户界面的程序设计中,容器可以被添加到其它容器中去。( )30在Java语言中,drawOval(100,100,80,80)表示绘制圆,其中(100,100)表示圆心。( )31. 容器是用来组织其他界面成分和元素的单元,它不能嵌套其他容器。( )32. 在使用BorderLayout时,最多可以放入五个组件。( )33使用BorderLayout布局管理器时,GUI组件可以按任何顺序添加到面板上。( )34捕获异常try语句后面通常跟有一个或多个catch()方法用来处理try块内生成的异常事件。( )35使用try-catch-finally语句只能捕获一个异常。( )36 try-catch语句不可以嵌套使用。( )37 IOException异常是非运行时异常,必须在程序中抛弃或捕获。( )38每个事件类对应一个事件监听器接口,每一个监听器接口都有相对应的适配器。( )39文件缓冲流的作用是提高文件的读/写效率。( )二、 填空题。(每空1分,共10分)1 根据结构组成和运行环境的不同,Java程序可分为两类:( Java Applet)、Java application 。2( Object )是Java程序中所有类的直接或间接父类,也是类库中所有类的父类。3 Java语言中的浮点型数据根据数据存储长度和数值精度的不同,进一步分为float和( double )两种具体类型。 4在Java语言中,所有的数组都有一个lenght属性,这个属性存储了该数组的( 元素个数 )。 5定义类就是定义一种抽象的( 数据类型 ),它是所有具有一定共性的对象的抽象描述。 6在Java语言中,使用继承、( 多态 )等技术,实现软件重用。 7 Java 源程序文件编译后产生的文件称为( 字节码 )文件,其扩展名为.class 。 8面向对象方法中,类的实例称为( 对象 )。9 java源文件中最多只能有一个( public )类,其他类的个数不限。10Java中的显式类型转换既能( 从低类型向高类型转换 )也能从高类型向低类型转换,而隐式类型转换只有前者。11在Java中,字符串和数组是作为( 对象 )出现的。12类是一组具有相同( 属性 )和行为的对象的抽象。实例是由某个特定的类所描述的一个个具体的对象。13( 接口 )只描述系统所提供的服务,而不包含服务的实现细节。14构造方法的方法名与( 类名 )相同,若类中没有定义任何的构造方法,则运行时系统会自动为该类生成一个默认构造方法。15在方法体内定义的变量是( 局部变量 ),其前面不能加public,且必须初始化。16( new )是一个特殊的方法,用于创建一个类的实例。17Java使用固定于首行的( package )语句来创建包。18如果一个类包含一个或多个abstract方法,则它是一个( abstract )类。19类成员的访问控制符有( public )、protected、private和默认四种。20public类型的类成员可被同一类、同一包中的子类与非子类和不同包中的( 子类与非子类 )的代码访问引用。21protected类型的类成员可被同一类、同一包中的( 子类与非子类 )和不同包中的子类的代码访问引用。22default类型的类成员只能被同一类、同一包中的( 子类与非子类 )的代码访问引用。23Java语言中,定义子类时,使用关键字extends来给出父类名。如果没有指出父类,则该类的默认父类为( Object类 )。24Java语言中,重载方法的选择是在编译时进行的,系统根据( 参数个数 )、参数类型和参数顺序寻找匹配方法。25 this代表( 当前对象自身 )的引用,super表示的是当前对象的直接父类对象。26Java不直接支持多继承,但可以通过( 接口 )实现多继承。类的继承具有传递性。27 Swing的事件处理机制包括( 事件源 )、事件和事件监听者。28JDBC API所包含的接口和类非常多,都定义在( java.sql )包和javax.sql包中。29( java.spl.Connection )接口负责建立与指定数据库的连接。30( ResultSet )接口表示从数据库中返回的结果集。三、 选择题。(每题2分,共30分)1、以下标识符中哪项是不合法的 ( D )A、 BigOlLong$223 B、 _utfint C、 $12s D、 3d2、main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的( B )A、 public static void mainB、 public static void main(String args)C、 public static int main(String args) D、 public void main(String args)3、以下代码段执行后的输出结果为( C )int x=3; int y=8;System.out.println(y%x);A、 0 B、 1 C、 2 D、 34、创建字符串s: s=new String(“xyzy”);以下哪条语句将改变s( D )。A、 s.append(“a”) B、 s.concat(s) C、 s.substring(3) D、 以上语句都不会5、Java application中的主类需包含main方法,main方法的返回类型是( D )。A、int B、float C、double D、void6、以下哪个不是Java的关键字( A )。A、TRUE B、B、const C、super D、void7、以下关于构造函数的描述错误的是( A )。A、构造函数的返回类型只能是void型。B、构造函数是类的一种特殊函数,它的方法名必须与类名相同。C、构造函数的主要作用是完成对类的对象的初始化工作。D、一般在创建新对象时,系统会自动调用构造函数。8、以下标识符中哪项是不合法的( A )。A、const B、$double C、hello D、BigMeaninglessName9、在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序的特性称为( C )。A、隐藏 B、覆盖 C、重载 D、Java不支持此特性10、以下关于继承的叙述正确的是( A )。A、在Java中类只允许单一继承B、在Java中一个类只能实现一个接口C、在Java中一个类不能同时继承一个类和实现一个接口D、在Java中接口只允许单一继承11、有以下方法的定义,请选择该方法的返回类型( D )。ReturnType method(byte x, double y) return (short)x/y*2;A、byte B、short C、int D、double12、有以下程序片段,下列哪个选项不能插入到行1。( D )1.2.public class Interesting3./do sth 4. A、import java.awt.*; B、package mypackage;C、class OtherClass D、public class MyClass 13、下面哪个函数是publicvoid aMethod().的重载函数( D )。A、void aMethod().B、publicint aMethod().C、publicvoid aMethod ( ).D、publicint aMethod(intm).14、假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的( C )。class Aint i;static String s;void method1() static void method2() A、System.out.println(a.i); B、a.method1(); C、A.method1(); D、A.method2()15、有如下代码段: 1) 2) if(unsafe()/do something 3) else if(safe()/do the other 4) 其中,方法unsafe() 将抛出IOException, 请问可将以下哪项填入第1行?( D )。public IOException methodName() public void methodName() C、public void methodName() throw IOException D、public void methodName() throws IOException16、下列选项中,用于在定义子类时声明父类名的关键字是( C )。 A、interface B、 package C、 extends D、 class 17、定义类头时能使用的修饰符是( C )。 A、 private B、 static C、 abstract D、 protected 18、下列类定义中,不正确的是( C )。 A、 class x . B、 class x extends y . C、 static class x implements y1,y2 . D、 public class x extends Applet . 19、用于定义类成员的访问控制权的一组关键字是( D )。 A、 class, float, double, public B、 float, boolean, int, long C、 char, extends, float, double D、 public, private, protected 20、不能构成循环的语句是( C )。 A、 for 语句 B、 while 语句 C、 switch 语句 D、 do_while 语句 21、函数重载是指( A )。A.两个或两个以上的函数取相同的函数名,但形参的个数或类型不同 B.两个以上的函数取相同的名字和具有相同的参数个数,但形参的类型可以不同 C.两个以上的函数名字不同,但形参的个数或类型相同 D.两个以上的函数取相同的函数名,并且函数的返回类型相同22、构造方法何时被调用( B ) 。A.类定义时 B.创建对象时 C.调用对象方法时 D.使用对象的变量时23、在异常处理中,如释放资源、关闭文件、关闭数据库等由( C )来完成。 A.try子句 B.catch子句 C.finally子句 D.throw子句 24、在Java中,不属于整数类型变量的是( A ) 。A.double B.long C.int D.byte25、当方法遇到异常又不知如何处理时,下列哪种说法是正确的( B ) 。A.捕获异常 B.抛出异常 C.声明异常 D.嵌套异常26、Java程序的执行过程中用到一套JDK工具,其中java.exe是指( B ) 。A.Java文档生成器B.Java解释器 C.Java编译器D.Java类分解器27、Java变量中,以下不属于复合类型的数据类型是( B )。 A.类 B.字符型 C.数组型 D.接口28、在Java中,负责对字节代码解释执行的是( B )。 A、垃圾回收器 B、虚拟机 C、编译器 D、多线程机制29、下列叙述中,正确的是( A )。 A、Java语言的标识符是区分大小写的 B、源文件名与public类名可以不相同 C、源文件名其扩展名为.jar D、源文件中public类的数目不限30、下列属于合法的Java标识符是( A )。 A、_cat B、5books C、+static D、-3.1415931、在 Java 中,表示换行符的转义字符是( A )。 A、n B、f C、n D、dd32、在 Java 中,由Java编译器自动导入,而无需在程序中用import导入的包是( D )。 A、java.applet B、java.awt C、java.util D、java.lang33、在 Java 中,用 package 语句说明一个包时,该包的层次结构必须是( B )。 A、与文件的结构相同 B、与文件目录的层次相同 C、与文件类型相同 D、与文件大小相同34、下列构造方法的调用方式中,正确的是( C )。 A、按照一般方法调用 B、由用户直接调用 C、只能通过 new 自动调用 D、被系统调用35、int 型 public 成员变量 MAX_LENGTH,该值保持为常数100,则定义这个变量的语句是( D )。A、public int MAX_LENGTH=100 B、final int MAX_LENGTH=100 C、public const int MAX_LENGTH=100 D、public final int MAX_LENGTH=10036、下列哪个修饰符可以使在一个类中定义的成员变量只能被同一包中的类访问( B )。Aprivate B无修饰符 Cpublic Dprotected37、下列常见的系统定义的异常中,哪个是输入、输出异常( B )。AClassNotFoundException BIOException CFileNotFoundException DUnknownHostException38、下列哪个选项的java源文件代码片段是不正确的( B )。Apackage testpackage; public class Test Bimport java.io.*; package testpackage; public class Test Cimport java.io.*; class Person public class Test Dimport java.io.*; import java.awt.*; public class Test 四、 问答题。(每题6分,共24分)1、数组有没有length()这个方法? String有没有length()这个方法?举例说明使用方法? 答:数组没有length()这个方法,有length的属性。 String有有length()这个方法。 例:int a=new int5;String s=new String(asdf);System.out.println(a.length+ +s.length();2、abstract class和interface有什么区别?答:声明方法的存在而不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能有抽象构造函数或抽象静态方法。Abstract 类的子类为它们父类中的所有抽象方法提供实现,否则它们也是抽象类。abstract 类的引用可以指向具体子类的一个实例。接口(interface)类似抽象类,只包含常量(static final)和方法的声明,而没有变量和方法的实现。抽象类中可以定义方法,为其提供默认行为;接口中只能声明方法,不能为这些方法提供默认行为,即接口中所有方法都是抽象的。多继承性可通过实现这样的接口而获得。3、方法的重载和方法的重写的区别。重载的方法是否可以改变返回值的类型?答:方法的重写和重载是Java多态性的不同表现。重写是父类与子类之间多态性的一种表现,重载是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。重载的方法可以改变返回值的类型。4、构造器Constructor是否可被重写? java中实现多态的机制是什么?答:构造器Constructor不能被继承,因此不能被重写,但可以被重载。方法的重写和重载是Java多态性的不同表现。重写是父类与子类之间多态性的一种表现,重载是一个类中多态性的一种表现。5、面向对象的特征有哪些方面 答:主要有以下四方面:(1)抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。(2)继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。(3)封装:封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。(4)多态性:多态性是指允许不同类的对象对同一消息作出响应。6、JAVA语言如何进行异常处理?答:Java通过面向对象的方法进行异常处理,把各种不同的异常进行分类,并提供了良好的接口。在Java中,每个异常都是一个对象,它是Throwable类或其它子类的实例。当一个方法出现异常后便抛出一个异常对象,该对象中包含有异常信息,调用这个对象的方法可以捕获到这个异常并进行处理。Java的异常处理是通过5个关键词来实现的:try、catch、throw、throws和finally。一般情况下是用try来执行一段程序,如果出现异常,系统会抛出(throws)一个异常,这时候你可以通过它的类型来捕捉(catch)它,或最后(finally)由缺省处理器来处理。7、JAVA中异常处理关键字:throws,throw,try,catch,finally分别代表什么意义?答:try指定一块预防所有异常的程序。紧跟在try程序后面,应包含一个catch子句来指定你想要捕捉的异常的类型。throw语句用来明确地抛出一个异常。throws用来标明一个成员函数可能抛出的各种异常。finally为确保一段代码不管发生什么异常都被执行一段代码。8、作用域public,private,protected,以及不写(default)时的区别答:区别如下:作用域 当前类 同一package 子孙类 其他packagepublic protected default private 9、JAVA代码查错abstract class Something private abstract String doSomething ();答: abstract的methods不能以private修饰。abstract的methods就是让子类implement(实现)具体细节的,不可以用private把abstract method封锁起来呢?同理,abstract method前不能加final。10、JAVA代码查错public class Something public static void main(String args) Something s = new Something();System.out.println(s.doSomething() returns + doSomething();public String doSomething() return Do something .;答:main和doSomething两个方法都在同一个类里。main是static的。静态方法不能直接调用非静态方法。可改成System.out.println(s.doSomething() returns + s.doSomething();。同理,静态方法不能访问非静态成员变量。五、 程序分析,阅读以下程序,在划线处填写合适的语句。(每空3.5分,共21分)1下面是一个Java Application 的主类的定义,其功能是输出所有命令行参数。 import java.io.*; public class MyClass public static void main(String args ) if( args.length != _ ) for(int i=0; i args.length; i+) System.out.println( _ ); else System.out.println(没有命令行参数); 答案: 0 argsi2本程序的功能是输出0到20之间所有奇数的和。public class Exam_1 public static void main(String args) int i=0,sum=0; while(i20) if( _ ) sum=sum+i; _ System.out.println(sum=+sum);答案: i %2!=0或i%2=1 i=i+1或i+或+i;3本程序计算10以内的随机整数的阶乘。import java.util.Random;public class Exam_1 public static void main(String args) Random random = new Random();float x = random.nextFloat();/产生0.0与1.0之间的一个浮点数int n = Math.round(10*x); /构造20以内的一个整数long f = 1 ; /保存阶乘的结果int k =1; /循环变量 /*Found*do _ k+; _ System.out.println(n+!= +f);答案: f=f*k; while(k=n);4本程序显示数组的长度及每个数组元素的值。public class ArrayLength public ArrayLength() public static void main(String args) int c=new int1,4,7,2,5; System.out.println(the Length is + _ ); for(int i=0;ic.length;i+) System.out.println(c+i+=+ _ ); 答案: c.length ci5本程序为把字符串转换为相应的整形数值。public class ExT public ExT() public static void main(String args) int m=0,t=555; try m=Integer. _

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论