JAVA语言基础内部测试题一.单项选择题(请选择最符合题目要求的答案)(每题2分)1.定义类头时,不可能用到的关键字是( )。
A) class B)private C)extends D)public2.下列类定义中,不正确的是( )。
A)class x { .... }B)class x extends y { .... }C)static class x implements y1,y2 { .... }D)public class x extends Applet { .... }3.设 A为已定义的类名,下列声明A类的对象a的语句中正确的是( )。
A)float A a;B)public A a=A( );C) A a=new int( );D) A a=new A( );4.有一个类A,以下为其构造方法的声明,其中正确的是( )。
A)public A(int x){...}B)static A(int x){...}C)public a(int x){...}D)void A(int x){...}5.下列语句哪一个正确()A)Java程序经编译后会产生machine codeB)Java程序经编译后会产生byte codeC)Java程序经编译后会产生DLLD)以上都不正确6.下列选项中,定义接口MyInterface的语句正确的是:()A)interface MyInterface{ } B) implements MyInterface { }C) class MyInterface{ } D) implements interface My{ }7.如果子类中的方法mymethod()覆盖了父类中的方法mymethod(),假设父类方法头部定义如下:void mymethod(int a),则子类方法的定义不合法的是:()A)public void mymethod(int a)B)protected void mymethod(int a)C)private void mymethod(int a)D)void mymethod(int a)8.在异常处理中,如释放资源、关闭文件、关闭数据库等由( )来完成。
A.try子句B.catch子句C.throw子句D.finally子句9.给定以下JAVA代码,这段代码编译运行后输出的结果是()public class Test {public static int aMethod(int i) throws Exception {try{return i/10;}catch(Exception ex){throw new Exception ("exception in a aMothod");}finally{System.out.print("finally");}}public static void main(String [] args) {try{aMethod(0);}catch(Exception ex){System.out.print("exception in main");}System.out.print("finished");}}A)finallyexception in mainfinishedB)exception in mainfinallyC)finallyfinishedD)finallyexception in mainfinished10.在Java语言中,下列关于类的继承的描述,正确的是()。
A)一个类可以继承多个父类B)一个类可以具有多个子类C)子类可以使用父类的所有方法D)子类一定比父类有更多的成员方法11.下列选项中关于Java中super关键字的说法正确的是()。
A)super关键字是在子类对象内部指代其父类对象的引用B)super关键字不仅可以指代子类的直接父类,还可以指代父类的父类C)子类通过super关键字只能调用父类的方法,而不能调用父类的属性D)子类通过super关键字只能调用父类的属性,而不能调用父类的方法12.在JAVA的异常处理模型中,能单独和finally语句一起使用的块是()。
A)tryB)catchC)throwD)throws13.下面关于类的构造函数的说明正确的是()。
A)与类名相同,无返回值,不能定义为void,也不能用return返回值B)每个类都至少有一个构造器,如果程序中没有定义构造器,JVM会在编译时自动生成一个不带参数也无方法体的构造器。
C)构造函数可以重载D)以上都对14.在JAVA中,Object类是所有类的父亲,用户自定义类默认扩展自Object类,下列选项中的()方法不属于Object类的方法。
A)equals(Object obj)B)getClass()C)toString()D)trim()15.下面哪个函数是public void example(){...} 的重载函数?A 、private void example( int m){...}B 、public int example(){...}C 、public void example2(){...}D 、public int example ( int m, float f){...}16.下列选项中关于Java中封装的说法错误的是()。
A)封装就是将属性私有化,提供公有的方法访问私有属性B)属性的访问方法包括setter方法和getter方法C)setter方法用于赋值,getter方法用于取值D)包含属性的类都必须封装属性,否则无法通过编译17.Java中,如果类C是类B的子类,类B是类A的子类,那么下面描述正确的是()A)C不仅继承了B中的成员,同样也继承了A中的成员B)C只继承了B中的成员C)C只继承了A中的成员D)C不能继承A或B中的成员18.在JAVA中,LinkedList类和ArrayList类同属于集合框架类,下列()选项中的方法是LinkedList类有而ArrayList类没有的。
A)add(Object o)B)add(int index,Object o)C)remove(Object o)D)removeLast()19.以下关于抽象类和接口的说法错误的是()A)抽象类在Java语言中表示的是一种继承关系,一个类只能使用一次继承。
但是一个类却可以实现多个接口。
B)在抽象类中可以没有抽象方法C)实现抽象类和接口的类必须实现其中的所有方法,除非它也是抽象类。
接口中的方法都不能被实现D)接口中定义的变量默认是public static final 型,且必须给其初值,所以实现类中不能重新定义,也不能改变其值。
E)接口中的方法都必须加上public关键字。
20.关于面向对象的说法正确的是()A)类可以让我们用程序模拟现实世界中的实体B)有多少个实体就要创建多少个类C)对象的行为和属性被封装在类中,外界通过调用类的方法来获得,但是要知道类的内部是如何实现D)现实世界中的某些实体不能用类来描述二.多项选择题(所有答案都选对,则该题得分,所选答案错误或不能选出所有答案,则该题不得分)(每题2分)1、在Java接口中,下列选项中有效的方法声明是()。
(选择二项)A、public void aMethod();B、void aMethod();C、protected void aMethod();D、private void aMethod();2、Java程序的种类有()A、类(Class) B.Applet C.Application D.Servlet3、下列说法正确的有()A、环境变量可在编译source code时指定B、在编译程序时,所能指定的环境变量不包括 class pathC、javac一次可同时编译数个Java源文件D、javac.exe能指定编译结果要置于哪个目录(directory)4、下列标识符不合法的有()A.new B.Usdollars C.1234 D.car.taxi5、不能用来修饰interface的有()A.private B.public C.protected D.static6、下列正确的有()A、call by value不会改变实际参数的数值B、call by reference能改变实际参数的参考地址C、call by reference不能改变实际参数的参考地址D、call by reference能改变实际参数的内容7、下列说法错误的有()A、在类方法中可用this来调用本类的类方法B、在类方法中调用本类的类方法时可直接调用C、在类方法中只能调用本类中的类方法D、在类方法中绝对不能调用实例方法8、下列说法错误的有()A、Java面向对象语言容许单独的过程与函数存在B、Java面向对象语言容许单独的方法存在C、Java语言中的方法属于类中的成员(member)D、Java语言中的方法必定隶属于某一类(对象),调用方法与过程或函数相同9、下列说法错误的有()A、能被java.exe成功运行的java class文件必须有main()方法B、J2SDK就是Java APIC、Appletviewer.exe可利用jar选项运行.jar文件D、能被 Appletviewer成功运行的java class文件必须有main()方法10、编译并运行下面的程序,运行结果为( ).public class A {public static void main (String[] args) {A a=new B( );a.test();}void test() {System.out.print ("A");}}class B extends A {void test() {super.test();System.out.println("B");}}A)子类B定义了与父类A中同名的方法test,java中称为方法的覆盖。
B)代码可以编译运行,并输出结果:AB。
C)代码可以编译运行,并输出结果:A。
D)子类B定义了与父类A中同名的方法test,java中称为方法的重载。
三.填空题(每空一分,10分)1.Java 仅支持类间的重继承,接口可以弥补这个缺陷,支持____ _重继承。
2. Java语言中,表示一个类A继承自父类B,并实现接口C的语句是____ 。
3.请定义一个double类型的常量PI,值为3.14 。
4.如果子类中的方法compute()覆盖了父类中的方法compute(),假设父类的compute()方法头部有可见性修饰符protected,则methodS()的可见性修饰符可以是__ __或。