考试宣言:同学们, 考试考多少分不是我们的目的! 排在班级多少的名次也不是我们的初衷!我的考试的目的是要通过考试中的题目,检查大家在这段时间的学习中,是否已经把需要掌握的知识掌握住了,如果哪道题目你不会做,又或者做错了, 那么不用怕, 考完试后, 导师讲解的时候你要注意听! 那时候学会了, 记住了, 也一样不影响你高薪就业!本套题共40道不定项选择题,其中单选30道,多选10道。
单选2分/题,多选4分/题。
多选题不全对半分,全对满分。
1.下面说法正确的是)A. JVM就是Java虚拟机,包含java核心类库B. JRE就是java运行环境,包含java程序编译运行的工具环境C. JDK就是java开发环境,javac是其中的一个工具D. 功能范围:JDK > JVM > JRE2.下面的说法正确的是( )A. Java 语言是面向对象的、解释执行的网络编程语言。
B. Java 语言具有可移植性,是与平台无关的编程语言。
C. Java 语言可对内存垃圾自动收集。
D. Java 语言编写的程序虽然是“一次编译,到处运行”,但必须要java的运行环境。
3.给定java代码,如下:public byte count(byte b1, byte b2){return ____;}要使这段代码能够编译成功,横线处可以填入A. (byte)(b1-b2)B. b1-b2C. (byte)b1+b2D. (byte)b1/b24.关于类的命名,正确说法是()A. 可以由数字和英文拉丁字母组成,且可以任意排序B. 命名要做到见名知意C. 如果是由多个单词组成,每个单词首字母大写D. 可以是Java已经定义过的关键字5.关于main方法说法错误的是()A.main方法是java程序执行的入口B.main方法的方法体重至少要有一行代码C.main必须定义在一个类中D. main方法的定义格式为:public static void main(String[] args){}6.类中某方法定义如下:double fun(int a,int b){return a*1.0/b;}同一类内其它方法调用该方法的正确方式是:A. double a = fun(1,2);B. double a = fun(1.0,2.0);C. int x = fun(1,2);D. int x = fun(1.0,2.0);7.给定java代码,如下,编译运行,结果是()public static void main(String[] args){boolean flag;System.out.println(“flag”+flag);}A. 编译错误B. 编译通过,单出现运行时错误C. 正常运行,输出flag=falseD. 正常运行,输出flag=8.下面哪个关键字可以定义一个类()A. interfaceB. classC. extendsD. implements9.byte类型的取值范围是()A. -256至255B. -255至255C. -128至127D. -127至12810.下面关于java中方法,描述错误的是( )A.必须定义在类或者接口里面B.定义一个方法之前要明确该方法需要的参数和返回值类型C.方法可以提高代码复用性,提高程序运行的效率D.方法只有调用才会被执行11.下面程序执行的结果是?( )class Test{public static void main(String[] args){System.out.println(““+’a’+1);}}A. 98B. a1C. 971D. 19712.for循环格式如下:for(表达式1;表达式2;表达式3){//code}下面描述错误的是()A. 表达式1处的代码会被执行多次B. 表达式1处可以定义变量C. 表达式3用于决定循环是否应该结束D. 表达式2的值可以是任意类型,也可以是boolean类型13.以下选项可以正确创建一个长度为3的二维数组的是 ( )A.new int[2][3]B.new int[3][]C.new int[][3]D.以上答案都不对14.设以下是应用程序中定义的方法printBinary,若在其main方法中有方法调用语句printBinary(2),则输出的结果是 ( )。
static void printBinary(int i) {System.out.print(i + "的2进制数表示为:\t");for(int j = 31; j >=0; j--)if(((1 << j) & i) != 0)System.out.print("1");elseSystem.out.print("0");System.out.println();}A) 00000000000000000000000000000001B) 00000000000000000000000000000010C) 00000000000000000000000000001111D) 0000000000000000000000000000000015.下面关于return语句说法正确的是:()A.只能让方法返回数值B.方法都必须显式使用该关键字C.方法中可以有多句returnD.可以用来返回数值以外的类型16.下面程序执行的结果是?()int i = 100;while(true){if (i++ > 100){break;}System.out.println(i);}A. 100B. 101C. 102D. 报错17.下面关于Java语言跨平台说法错误的是:A. java语言编写的程序,一次编译后,可以在多个系统平台上运行。
B. java语言垮平台依赖于java虚拟机C. java垮平台,java虚拟机也是垮平台的(不同系统平台使用相同的java虚拟机)D. 原理是java程序是通过java虚拟机在系统平台上运行的,只要该系统可以安装相应的java虚拟机,该系统就可以运行java程序。
18.下面程序的运行结果是 ( )int a=3, b=1;if(a==b){System.out.println("a="+a);}A. a=1B. a=3C. 编译错误D. 正常运行但没有输出19.下面程序的运行后,结果正确的是:int a=1,b=2;int c=(a+b>3?a++:++b);A. a=2,b=3B. a=1,b=3C. a=1,b=2D. c=220.定义如下的二维数组b,下面的说法正确的是( )int b[][]={{1, 2, 3}, {4, 5},{6, 7, 8}}};A. b.length的值是3B. b[1].length的值是3C. b[1][1]的值是5D. 二维数组b的第一个元素有3个子元素21.下面哪种类型的文件可以在java虚拟机中运行? ( )A..javaB..jreC..exeD..class22.下面程序的运行结果class Demo{public static int fun(int c){return c+=2;}public static void main(String[] args) {int temp = fun(2);System.out.println(temp);}}A. 2B. 4C. 6D. 823.下列方法定义中,正确的是( )。
A) int x( ){ return true; }B) void x( ){ return true; }C) int x( ){ char ch='a'; return (int)ch; }D) int x( int a, int b){ return a+b; }24.下面数组定义正确的是()A. int [] arr ={23,45,65,78,89};B. int [] arr=new int[10]{};C. int [] arr=new int[4]{3,4,5,6};D. int [] arr={"a",23 ,45,6};25.下面程序执行的结果是?()int x =1,y=1;if(x++==2 & ++y==2){x=7;}System.out.println("x="+x+" , y="+y);A. x=1 y=2B. x=7 y=1C. x=7 y=2D. x=2 y=226.JDK1.7之后,switch语句后括号里的表达式可以是以下哪种类型()A. charB. StringC. longD. 枚举类型27.同一类中有两个以上方法同名称方法重载,Java语言规定():A. 不允许重载B. 重载方法的参数列表必须不同C. 重载方法的返回值类型必须不同D. 重载方法的参数列表和返回值类型必须都不同。
28.下面程序执行的结果是?()boolean b=true;if(b=false){System.out.println("a");}else if(b){System.out.println("b");}else if(!b){System.out.println("c");}else{System.out.println("d");}A. aB. bC. cD. d29.关于选择结构下列哪个说法正确?()A. if语句和else语句必须成对出现B. if语句可以没有else语句对应C. switch结构中每个case语句中必须用break语句D. switch结构中必须有default语句30.下面程序执行的结果是?()int x=2,y=3;switch(x){default:y++;case 3:y++;case 4:y++;}System.out.println("y="+y);A. 3B. 4C. 5D. 631.阅读下面代码段:public class Demo{public static void main (String[] args){int[] arr = new int[10];System.out.println(arr[1]);}}执行结果正确的说法是( )A. 编译时将产生错误B. 编译时正确,运行时将产生错误C. 输出零D. 输出空32.设有定义 float x=3.5f, y=4.6f, z=5.7f; 则以下的表达式中,值为false的是( )A. x > y || x > zB. x < y & ! ( x < z )C. z > ( y + x )D. x != y33.和下面代码执行结束后,sum结果一致的选项是()int i=1;int sum=0;while(i<=100){if(i%2==0){sum=sum+i;}i++;}A. for (int x =1; x<=100;x++){ sum=sum+x;}B. for (int x =0; x<=100;x+=2){ sum=sum+x;}C. for (int x =1; x<=100;x+=2){ sum=sum+x;}D.上述全对34.下面不属于基本数据类型的是()A. intB. doubleC. LongD. int[]35.下面哪个不是java中的关键字?()A. publicB. trueC. mainD. class36.以下代码输出是()int i=0;int sum=0;while(i<=10){i++;if( i%2 !=0 )continue;sum+=i;}System.out.println(sum);A. 55B. 45C. 35D. 3037.关于 for循环和 while循环的说法哪个正确?()A.while循环先判断后执行,for循环先执行后判断。