1、JAVA试题及答案50道选择题选择题1、JAVA所定义的版本中不包括:( D )A、JAVA2 EEB、JAVA2 CardC、JAVA2 MED、JAVA2 HEE、JAVA2 SE2、下列说法正确的是( A )A、JAVA程序的main方法必须写在类里面B、)C、JAVA程序中可以有多个main方法D、JAVA程序中类名必须与文件名一样E、JAVA程序的main方法中如果只有一条语句,可以不用(大括号)括起来3、变量命名规范说法正确的是( B )A、变量由字母、下划线、数字、$符号随意组成;B、变量不能以数字作为开头;C、A和a在java中是同一个变量;D、不同类型的变量,可以起相同的名字
2、;;4、下列javaDoc注释正确的是( C )A、/*我爱北京天安门*/B、quals(john)C、john = johnD、john.equals(new String(john)5、下列输出结果是( C )int a = 0 ;while ( a 0 ) i = i + 1; if ( i = =10 ) break;; A.while循环执行10次B.死循环C.循环一次都不执行D.循环执行一次7、下面有关for循环的描述正确的是( A )A、for循环体语句中,可以包含多条语句,但要用大括号括起来B、for循环只能用于循环次数已经确定的情况C、D、在for循环中,不能使用break语
3、句跳出循环E、for循环是先执行循环体语句,后进行条件判断8、下列( A C )属于引用数据类型(选择两项)A、StringB、charC、用户自定义的Student类类型D、int9、对象的特征在类中表示为变量,称为类的( B )。A、$B、对象C、属性D、方法E、数据类型10、在java中下列关于自动类型转换说法正确的是( A )A、基本数据类型和String相加结果一定是字符串型B、char类型和int类型相加结果一定是字符C、double类型可以自动转换为intD、char + int + double + 结果一定是double;11、关于类的描叙正确的是( BD)(选择两项)A、在
4、类中定义的变量称为类的成员变量,在别的类中可以直接使用B、局部变量的作用范围仅仅在定义它的方法内,或者是在定义它的控制流块中C、使用别的类的方法仅仅需要引用方法的名字即可D、一个类的方法使用该类的另一个方法时可以直接引用方法名12、下列关于字符串的描叙中错误的是(BC )(选择两项)A、字符串是对象B、String对象存储字符串的效率比StringBuffer高C、D、可以使用StringBuffer sb=这里是字符串声明并初始化StringBuffer对象sbE、String类提供了许多用来操作字符串的方法:连接,提取,查询等13、以下( D )代码,能够对数组正确初始化(或者是默认初始化
5、)。A、int a;B、a = 1, 2, 3, 4, 5;C、int a = new int51, 2, 3, 4, 5;D、int a = new int5;14、score是一个整数数组,有五个元素,已经正确初始化并赋值,仔细阅读下面代码,程序运行结果是( B )%temp = score0;for (int index = 1;index 5;index+) if (scoreindex temp) temp = scoreindex; A.求最大数B.求最小数C.找到数组最后一个元素D.编译出错15、下面关于数组的说法中,错误的是(AB )(选择两项)A、在类中声明一个整数数组作为成
6、员变量,如果没有给它赋值,数值元素值为空B、数组可以在内存空间连续存储任意一组数据C、数组必须先声明,然后才能使用D、数组本身是一个对象16、在Java中,关于构造方法,下列说法错误的是( C )A、构造方法的名称必须与类名相同B、构造方法可以带参数C、D、构造方法不可以重载E、构造方法绝对不能有返回值17、执行下面代码结果( D ) for(int i=0;) 这是 +i); break;A、语法错误,缺少表达式2和表达式3B、死循环C、】D、程序什么都不输出E、输出:这是018、下面代码输出结果是(B )。 int i=0,s=0; do if (i%2 = = 0 ) i+; conti
7、nue; i+; s = s + i; while (i7);19、 下面( C )不是String类提供的合法的方法。A、equals(String)B、trim()C、append() StringBufferD、indexOf()20、在JAVA中,以下( C )类的对象以键-值的方式存储对象21、.22、给定如下所示的JAVA代码,则运行时,会产生( B )类型的异常 String s = null; (abc);A.ArithmeticExceptionB.NullPointerExceptionC.IOExceptionD.ClassNotFoundException23、给定ja
8、va代码如下所示,在A处新增下列( AC)方法,是对cal方法的重载(选择两项)public class Test 3 a+ : b+); A、a 的值是 2,b 的值是 3 B、a 的值是 1,b 的值是 3 (C、a 的值是 1,b 的值是 2 D、c 的值是 false 6将类的成员的访问权限设置为默认的,则该成员能被( A ) 。 A、同一包中的类访问 B、其他包中的类访问 C、所有的类访问 D、所有的类的子类访问 7下面的方法重载,正确的是( C ) 。 A、int fun(int a, float b) B、float fun(int a, float b) : float fun
9、(int a, float b) float fun(int x, float y) C、float fun(float a) D、float fun1(int a, float b) float fun(float a, float b) float fun2(int a, float b) 8下面关于继承的说法,正确的是( D ) 。 A、超类的对象就是子类的对象 B、一个类可以有几个超类 C、一个类只能有一个子类 D、一个类只能有一个超类 9下面关于多态性的说法,正确的是( C ) 。 A、一个类中不能有同名的方法B、子类中不能有和父类中同名的方法 C、子类中可以有和父类中同名且参数相同
10、的方法 D、多态性就是方法的名字可以一样,但返回的类型必须不一样 10关于下面程序, ( A )的结论是正确的。 class J_SubClass extends J_Test public class J_Test J_Test(int i) : public static void main(String args) J_SubClass a = new J_SubClass(); A、不能通过编译,因为类 J_Test 没有定义无参数的构造方法 B、不能通过编译,因为类 J_SubClass 没有定义无参数的构造方法 C、不能通过编译,因为没有实现 J_SubClass(int i)的构
11、造方法 D、可以成功通过编译 11关于下面程序片段, ( B )的结论是正确的。 $ String a = Java; String b = Java; String x = Ja; String y = va; String c = x + y; A、a 和 b 指向同一个实例对象,a 和 c 指向同一个实例对象 B、a 和 b 指向同一个实例对象,a 和 c 不指向同一个实例对象 C、a 和 b 不指向同一个实例对象,a 和 c 指向同一个实例对象 D、a 和 b 不指向同一个实例对象,a 和 c 不指向同一个实例对象 $12假设下面的程序代码都放在 文件中, ( D )程序代码能够编译通
12、过。 A、import .*; B、package mypackage; package mypackage; import .*; class MyClass public class myClass C、int m; D、/*This is a comment*/ package mypackage; package mypackage; import .*; import .*; class MyClass public class MyClass 13当需要在文件中写入字符而不是字节时,在下面的类中最好选用( B )类。 A、 B、 C、 D、 14关于事件监听,正确的是( C ) 。
13、 A、一个事件监听器只能监听一个组件 B、一个事件监听器只能监听处理一种事件 C、一个组件可以注册多个事件监听器,一个事件监听器也可以注册到多个组件上 D、一个组件只能引发一种事件 |二、填空题 1 Class类是由 Java 编译器自动生成的,它伴随每个类。 2任何一个 Java 程序都默认引入一个包,这个包的名字是 。 3在 Java 语言中,有一个类是所有类或接口的父类,这个类的名称是 。 4在 Java 中所实现的二维数组,实际上是由一维数组构成的数组 。 5在 Java 中,字符串是作为对象出现的。 6接口可以看作是仅容纳抽象方法 、常量,而又不能直接生成对象的特殊抽象类。 7Fil
14、eInputStream 是字节流,BufferedWriter 是字符流,ObjectOutputStream 是对象流 。 8在 Java 中,组件不能独立地显示出来,必须将组件放在一定的 容器 中才能显示。 9Applet 是能够嵌入到 HTML 格式中的文件,并能够在浏览器中运行的 Java 类。 三、判断题 1、Java 程序一般应当含有 main 方法,因为它是所有 Java 程序执行的入口。 ( ) 2、Java 语言的标识符是不区分大小写的。 ( ) 3、 Java 语言为所有的 Java 程序自动导入包 “” , 因此 Java 程序可以直接用 “”中的类和接口。位于类继承关
15、系层次结构树的根部的类 Object 就是在包“”中的类。( ) 4、有时候为了避免引起混淆,构造方法的方法名可以不与所属类名同名。 ( ) 5、Java 语言规定,任何一个子类的构造方法都必须调用其父类的构造方法(包括隐式调用) ,并且调用父类构造方法的语句必须是子类构造方法的第一条语句。 ( ) 6、Java 语言对内存的释放是采用垃圾回收机制。Java 虚拟机自动判断并收集“垃圾” ,但一般不会立即释放它们的存储空间。 ( ) 7、 在 编 译 Java 源程序时, 计算机根本不会去识别各个变量名的具体含义, 因此命名规范对编写 Java程序而言不是必要的,而且有可能会降低编写 Java
16、 源程序的效率。 ( )一、单项选择题 1作为 Java 应用程序入口的 main 方法,其声明格式可以是( A ) 。 A、public static void main(String args) B、public static int main(String args) C、public void main(String args) D、public int main(String args) 2在一个合法的 Java 源程序文件中定义了 3 个类,其中属性为 public 的类可能有( B )个。 A、0 B、1 C、2 D、3 3下面( B )单词是 Java 语言的关键字。 A、si
17、zeof B、abstract C、null D、String 4下面( C )语句不会出现编译警告或错误。 A、float f = ; B、char c = a; C、byte b = 25; D、boolean d = null; 5下面程序片段输出的是( D ) 。 int i = 0, j = 9; / do if(i+ -j) break; while(i 4); i = + i + and j = + j); A、i = 4 and j = 4 B、i = 5 and j = 5 C、i = 5 and j = 4 D、i = 4 and j = 5 6对于下面( B )类定义,可
18、以通过“new J_Class()”生成类 J_Class 的实例对象。 A、public class J_Class * public J_Class(void) B、public c lass J _Class C、public class J_Class public J_Class(String s) D、public class J_Class public void J_Class() public J_Class(String s) &7要求设计一个类,它拥有一个特殊的成员域,该成员域必须能够被这个类的子类访问到,但是不能被不在同一个包内的其他类访问到。下面( C )可以满足上述
19、要求。 A、该成员域的封装属性设置为 public B、该成员域的封装属性设置为 private C、该成员域的封装属性设置为 protected D、该成员域不需要特殊的封装属性 8关于下面程序, ( D )的结论是正确。 public class J_Test public static void main(String args) 3; C、k-=3&k+=3; D、k+=3|+k3; 4设有定义:String s=“World”;,下列语句错误的是( D ) 。 A、int m=(r); B、char c=(0); C、int n=(); D、String str=(2); 5假设在
20、Java 源程序文件“”中只含有一个类,而且这个类必须能够被位于个庞大的软件系统中的所有 Java 类访问到,那么下面( C )声明有可能是符合要求的类声明。 ( A、private class MyClass extends Object B、public class myclass extends Object C、public class MyClass D、class MyClass extends Object 6在 Java 中,用 package 语句说明一个包时,该包的层次结构必须是( A ) 。 A、与文件目录的层次相同 B、与文件的结构相同 C、与文件类型相同 D、与文件大小相同 7下面关于数组的说法,错误的是( B ) 。 A、数组是最简单的复合数据类型,是一系列数据的集合 B、声明数组时,必须分配内存 C、数组的元素可以是值(基本数据类型) 、对象或其他数组 D、一个数组中的所有值都必须是相同的类型 8下面关于方法的说法,错误的是( C ) 。 A、Java 中的方法参数传递时传值调用,而不是地址调用 B、方法体是对方法的实现,包括变量声明和 Java 的合法语句 C、如果程序定义了一个或多个构造方法,在创建对象时,也可以用系统自动生成空的构造方法 D、类的私有方法不能被其子类直接访问 9下面关于内部类的说法,错误的是(
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2