Java程序设计期末复习题(2015-2016-1学年度)第一章Java概述1、Java体系有哪几部分构成?(多选)(ABC)A.JavaSEB.JavaEEC. JavaMED.Javac2、与Jdk相关的3个重要的环境变量是?(ABC)A.JA V A_HOMEB.PATHC.CLASSPATHD.JPATHEXT3、编译和运行Java程序分别用到的命令是?(AC)A.javacB.javadocC.javaD.javah4、编译Java源程序文件时将产生相应的字节码文件,这些字节码文件的扩展名为(B)。
A.javaB.classC. htmlD.exe5、Java 的跨平台机制是由______实现的。
(D)A.GCB.Java DEC.htmlD.JVM6、以下用于解释字节码文件的工具是(B)A.javacB.javaC.javadocD.jar7、JDK 安装成功后,______目录用于存放Java 开发所需要的类库。
(C)A.binB.demoC.libD.jre8、下面属于文档注释的标记是(D)A.--B./C./ *…*/D./**…*/9、关于程序中的main方法,以下说法正确的有()(ABCD)A.每个独立的、可执行的Java 应用程序必须要有main()方法才能运行B.main()方法是程序的主方法C. main()方法是整个程序的入口,D.程序运行时执行的第一个方法就是main()方法10、关于Java 跨平台技术的实现原理,以下说法正确的是(ABCD)A.JVM 在具体的操作系统之上运行,其本身具有一套虚拟机指令,但它通常是在软件而不是在硬件上实现,B.JVM 形成一个抽象层,将底层硬件平台、操作系统与编译过的代码联系起来,C.Java 字节码的格式通用,具有跨平台特性,但这种跨平台是建立在JVM 虚拟机的基础之上D. 只有通过JVM 处理后才可以将字节码转换为特定机器上的机器码,然后在特定的机器上运行,第二章Java语言基础1、常见的字符集有哪3种?(ACD)A. ASCIIB.BIG5C.GB2312D.unicode2、变量的作用域可将变量分为哪两类?局部变量和全局变量3、定义常量的关键字是什么?Final4、关系运算符运算后返回的结果是什么类型?(C)A.整型B.浮点型 C.布尔型 D.字符型5、下面赋值语句不正确的是_____。
(A)A. float f= 2.3B. float f = 5.4fC. double d = 3.14dD. double d = 3.14156、下面语句的输出结果是______。
(C)int x = 4;System.out.println (“value is ”+((x>4)?99.9 : 9);A. 输出结果为:value is 99.9B.输出结果为:value is 9C.输出结果为:value is 9.0D.输出结果为:语法错误7、下面代码片段:(A)switch(m){case 0: System.out.println("case 0 ");case 1: System.out.println("case 1 ");break;case 2: break;default: System.out.println("default");}当m 的值为0 时,将会输出______(A)。
A.case 0 B.case 0 C case0 case1 default D. defaultcase 18、for 循环的一般形式为:for(初值;终值;增量) (D)以下对for 循环的描述中,正确的是______。
A. 初值、终值、增量必须是整数B.for 循环的次数是由一个默认的循环变量决定C. 初值和增量都是赋值语句,终值是条件判断语句D.for 循环是一种计次循环,每个for 循环都带有一个内部不可见循环变量,控制for循环次数9、在Java 中,如下代码段的输出结果为________(D)public static void main(String []args) {int num=1;while(num< 6){System.out.print(num);if(num/2==0)continue;elsenum++;}}}A. 12345B.135C.24 D死循环10、关于循环说法错误的是_______(C)A. while 循环是先判断条件表达式是否为true,如果为true,则执行循环体B. do-while 则是先循环后判断,do-while 至少会循环一次C. for()括号中的分号可以一个也不要D. for 循环也是先判断再循环11、以上哪种创建数组不正确________(C)A.int[] a = {1,2,3,4,5};B.int[] a = new int[2];C.int[][] b = new int[][2];D.int[][] b = new int[2][];第三章类与继承1、方法的主要组成部分?(ABCD)A.修饰符 B.返回值 C.方法名 D. 参数2、Java中包的分割符号是?(A)A. .B. \C.\\D./3、修饰静态成员的修饰符为?(B)A. finalB.staticC.voidD. abstract4、当声明一个对象数组变量时,但并没有赋值时,在内存里发生了什么?(A)A.在栈内存里开辟了存放引用的空间B.在堆内存里开辟空间5、构造方法何时被调用____。
(B)A.类定义时 B.创建对象时 C.调用对象方法时 D.使用对象的变量时6、JA V A 中,访问修饰符限制性最高的是____。
(A)A.private B.protected C.public D.缺省7、下列关于面向对象的程序设计的说法中,不正确的是____(B )。
A.对象将数据和行为封装于一体B.对象是面向对象技术的核心所在,在面向对象程序设计中,对象是类的抽象C.类是具有相同特征(属性)和共同行为(方法)的一组对象的集合D.类的修饰符可以是abstract(抽象),static(静态)或final(最终)8、关于构造方法说法错误的是______。
(B)A.构造方法的方法名必须与类名一致B.构造方法没有返回类型,可以是void 类型C. 如果在类中没有定义任何的构造方法,则编译器将会自动加上一个不带任何参数的构造方法D. 构造方法可以被重载9、关于方法重载说法不正确的是_______。
(C)A.必须在同一个类中 B.方法名相同 C.方法的返回值相同 D.参数列表不同10、关于包方面说法不正确的是_______(A)。
A.一个Java 文件中只能有一条import 语句B.使用package 关键字可以指定类所属的包C.包在物理上的表现形式是嵌套的文件目录D. 导入包需要使用关键字import11、关于静态成员说法错误的是______。
(D)A.static 关键字修饰的成员也称为静态成员B.静态成员则可以直接通过类名调用C. 静态成员属于整个类,当系统第一次准备使用该类时,系统会为该类的类变量分配内存空间D.静态成员不可以通过对象来调用12、关于可变参数说法正确的是_______。
( C)A.可变参数可以在参数列表的任何位置B.一个方法中允许包含多个可变参数C.可变参数的本质就是一个数组调用一个包含可变参数的方法时,只能传入多个参数,D.不能传入数组第四章核心类1、float对应的封装类为?( C )A.double B.float C. Float D.Double2、装箱是将堆中的数据封装成对象放到栈中的过程,拆箱将栈中的数值存放到堆中的过程,这种说法正确吗?(不对)3、关于“==”和“equals”的区别得表述正确么?(对)前者比较的地址是否相对,即是否同一个对象,后者比较的是值是否相等4、哪个是截取字符串的方法?(B)A."toUpperCase" B.“subString”5、在控制台输入整数的时候,用下列Scanner类的哪个方法来接收不会报错?(ABC)A.nextInt B. next C. nextFloat D.都会报错6、用作数学运算和日期处理的类分别是?(AC)A. DateB. MethC.MathD. Time7、int 基本数据类型对应的封装类是____(C)。
A.IntB. ShortC. IntegerD. Long8、System.out.println(“abc”+1+2)输出的结果是____。
(A)A.abc12B.abc3C.“abc”+1+2D. 3abc9、下述代码的输出结果是____。
(C)String str="abcdef";System.out.println(str.substring(2,4));A.abcdefB. bcdC. cdD. cde10、关于装箱和拆箱说法错误的是_____。
(D )A.装箱是指将基本类型数据值转换成对应的封装类对象B.装箱将栈中的数据封装成对象存放到堆中的过程C.拆箱是将封装的对象转换成基本类型数据值D.拆箱是是指将基本类型数据值转换成对应的封装类对象11、下列不是String 类的方法的是_______。
(C)A.charAt(int index) B. indexOf(String s) C. beginWith(String s) D.endsWith(String s)12、关于Object 类说法不正确的是______。
(B)A.Object 类是所有类的顶级父类B.Object 对象类定义在java.util 包C.在Java 体系中,所有类都直接或间接的继承了Object 类D.任何类型的对象都可以赋给Object 类型的变量13、关于String、StringBuffer 和StringBuilder 说法错误的是_______。
(B )A.String 创建的字符串是不可变的B.StringBuffer 创建的字符串是可变的,而所引用的地址一直不变C.StringBuffer 是线程安全的,因此性能比StringBuilder 好D.StringBuilder 没有实现线程安全,因此性能比StringBuffer 好第五章类和类之间的关系1、继承的主要作用是什么(ABC)A.解决代码重用B.减少代码冗余C.便于扩展2、类和类都有哪些关系?(ABCD)A. 依赖 B .关联 C.聚合 D.组合3、匿名内部类适用于只需要使用一次的类,这种说法对吗?对4、运用单例模式只能创建出一个对象实例,这种说法正确吗?对5、在Java 语言中,下面关于类的描述正确的是_____(B)。