java基础测试题(含答案和解析)
? ?
分
| 得分: 满分: 2分
(单选题)分析如下代码,输出结果正确的是(): class Test{ public static void main(String[] args){ int i=5; System.out.println(i++); System.out.println(i); } }
A.6 6 B.5 5 C.5 6 D.6 7 | 得分: 满分: 2分
(单选题)在Java中有一个类Aoo,下面为其构造方法的声明,正确的是()。
A.void Aoo(){ } B.Aoo(){ } C.aoo(){ } D.void aoo(){ } | 得分: 满分: 2分
(单选题)在Java中,下列代码的运行结果是()。 public static void main(String[] args){ int[] arr = new int[4]; System.out.println(arr[4]); }
A.编译错误 B.运行时异常 C.0 D.null | 得分: 满分: 2分
(单选题)在Java中,一个源程序文件中定义了3个类,其中public修饰的类只能有()个。
A.0 B.1 C.2 D.3 | 得分: 满分: 2分
(单选题)下列Java代码的正确输出结果是()。 public class Test { public static void main(String[] args) { Aoo aoo = new Aoo(5); System.out.println(aoo.num); } } class Aoo{ int num; public Aoo(int num) { num=num; } }
A.0 B.5 C.编译错误 D.运行异常 | 得分: 满分: 2分
(单选题)下列代码输出的结果是() int sum = 0; for (int i = 1; i < 30; i++) { if (i % 3 == 0) { sum += i; } else if (sum > 30) { break; } } System.out.println(sum);
A.120 B.48 C.45 D.30 | 得分: 满分: 2分
(单选题)在Java中,可以创建长度为4的数组对象的是()。
A.int[] arr = new int[]; B.int[] arr = new int(4); C.int[] arr = new int[] { 12,34,56,78 }; D.int[] arr = new int[4] { 12,78 }; | 得分: 满分: 2分
(单选题)下列对方法的访问中,语法正确的是( )。
A.int i = 10; static int j = 20; void fun1(){} static void fun2(){ fun1(); i++; } B.int i = 10; static int j = 20; void fun1(){} static void fun2(){ fun1(); j++; } C.int i = 10; static int j = 20; void fun1(){ fun2(); i++; } static void fun2(){ i++; } D.int i = 10; static int j = 20; void fun1(){ fun2(); j++; } static void fun2(){} | 得分: 满分: 2分
(单选题)在Java中, 以下()是public void Test()的重载方法。
A.void Test() { } B.public int Test() { } C.public void Test() { } D.public void Test(int num) { } | 得分: 满分: 2分
(单选题)下列Java代码运行的结果是()。 public class Test { public static void main(String[] args) { Aoo[] aoo = new Aoo[2]; System.out.println(aoo[0]); } } class Aoo{ int x; int y; public Aoo(int x,int y) { this.x = x; this.y = y; } }
A.0 B.null C.编译错误 D.运行异常 | 得分: 满分: 2分
(单选题)java代码,如下: class Fu{ public void count(int i){ System.out.println(11/4); } } public class Zi extends Fu{ public void count(int i){ System.out.println(11%i); } public static void main(String[]args){ Fu fu = new Zi( ); fu.count(4); } } 编译运行,结果是( )。
A.2 B.3 C.2.75 D.0 | 得分: 满分: 2分
(单选题)给出以下代码,请问如何声明totalPage使其为一个只读属性( )。 public class Page{ public int totalPage; }
A.声明totalPage变量为private。 B.声明Page类为private。 C.声明totalPage变量为private,并且建立一个用于获取totalPage变量值 的getTotalPage() 方法。 D.声明totalPage变量为static。 | 得分: 满分: 2分
(单选题)给出下面的代码段 : public class Base{ int w,x,y,z; public Base(int a,int b) { x=a; y=b; } public Base(int a,int b,int c,int d) { // ... w=d; z=c; } } 在代码// ... 处写入如下哪个代码是正确的?( )。
A.Base(a,b); B.x=a,y=b; C.this(a); this(b); D.this(a,b); | 得分: 满分: 2分
(单选题)分析如下Java代码,如果想在控制台上输出"B类的test()方法", 则在1处应填入( )。 class A { public void test() { System.out.println("A类的test()方法"); } } class B extends A { public void test() { System.out.println("B类的test()方法"); } public static void main(String args[]) { // 1 } }
A.A a = new B(); a.test(); B.A a = new A(); a.test(); C.B b = new A(); b.test(); D.B.test(); | 得分: 满分: 2分
(单选题)下面的程序输出结果是( )。 public class A implements B { int k = 20; public static void main(String args[]) { int i; B c1 = new A(); i = c1.k; System.out.println("i=" + i); } } interface B { int k = 10; }
A.i=20 B.程序有编译错误 C.i=10 D.i=true | 得分: 满分: 2分
(单选题)下列程序输出结果是( )。 public class Test { static int i = 0; public int aMethod() { i++; return i; } public static void main(String args[]) { Test test = new Test(); test.aMethod(); int j = test.aMethod(); System.out.println(j); Test test1 = new Test(); System.out.println(test1.i); } }
A.2 2 B.2 0 C.0 2 D.1 2 | 得分: 满分: 2分
(单选题)下列程序运行结果是( )。 public class Test { String str=new String("tedu"); char[]ch={‘x‘,‘y‘,‘z‘}; public static void main(String args[]){ Test t = new Test(); t.change(t.str,t.ch); System.out.print(t.str+" and "); System.out.print(t.ch);} public void change(String str,char ch[]){ str="tarena"; ch[0]=‘w‘; } }
A.tedu and xyz B.tarena and xyz C.tedu and wyz D.tarena and wyz | 得分: 满分: 2分
(单选题)在java中,下列程序的输出结果是( )。 class Point { int x; boolean y; void output(){ System.out.println(x); System.out.println(y); } public static void main(String[] args) { Point point =new Point(); point.output(); } }
A.编译错误 B.0 true C.0 false D.0 0 | 得分: 满分: 2分
(单选题)关键字abstract可以和下列( )关键字一起使用
A.final B.private C.public D.static | 得分: 满分: 2分
(单选题)Java代码的运行结果是( )。 class Account { private String name; // 名字 private int state; // 账号状态 private String idCard; // 身份证号 public void Account() { name = "李强"; state = 0; idCard = "109..."; System.out.println("执行构造方法。");} public void show() { System.out.println ("账务账号的名字是" + name + ",状态是" + state + ",身份证号是" + idCard + "。"); } public static void main(String[] args) { Account acc = new Account(); acc.show();} }
A.账务账号的名字是null,状态是1,身份证号是109...。 B.执行构造方法。 账务账号的名字是null,状态是1,身份证号是null。 C.账务账号的名字是null,状态是0,身份证号是null。 D.执行构造方法。 账务账号的名字是李强,状态是1,身份证号是109...。 | 得分: 满分: 2分
(单选题)如下两个数组定义 char[] arr1 = {‘a‘,‘c‘,‘d‘}; char[] arr2 = {‘g‘,‘h‘,‘j‘}; 能将两个数组正确合并的选项是( )。
A.int length = arr1.length+arr2.length; char[] arr3 = new char[length]; System.arraycopy(arr1,arr3,arr1.length); System.arraycopy(arr2,arr2.length); B.int length = arr1.length+arr2.length; char[] arr3 = new char[length]; System.arraycopy(arr1,arr1.length-1,arr2.length); C.int length = arr1.length+arr2.length; char[] arr3 = new char[length]; System.arraycopy(arr1,arr1.length+1,arr2.length); D.int length = arr1.length+arr2.length; char[] arr3 = new char[length]; System.arraycopy(arr1,arr1.length,arr2.length) | 得分: 满分: 2分
(单选题)下列运算结果正确的是( )。
A.int x = 4590; x = x / 1000 *1000; x的结果是4590 B.int x = 3; x = x++; x的结果是4 C.short x = 3; x = x+4; x的结果是7 D.int x = 2; boolean b = x>3 && x<6; b的结果是false | 得分: 满分: 2分
(单选题)执行完下面程序片段后( )的结论是正确的。 int a,b,c; a = ‘a‘; b = ‘b‘; c = (a + b > 180 ? a++ : b++); // 已知字符‘a‘,字符‘b‘对应的ASCII值97,98
A.a=97,b=98,c=99 B.a=98,b=99,c=99 C.a=97,c=98 D.a=98,c=97 | 得分: 满分: 2分
(单选题)下列程序输出结果是( )。 int a = 0; while (a < 5) { switch (a) { case 0: case 3: a = a + 1; case 1: case 2: a = a + 2; default: a = a + 3; } } System.out.print(a);
A.5 B.0 C.6 D.2 | 得分: 满分: 2分
(单选题)关于以下应用程序的说明,正确的是( )。 1. class StaticClass 2. { 3. static int x=10; 4. static { x+=5;} 5. public static void main(String[] args) 6. { 7. System.out.println("x=" + x); 8. } 9. static { x/=3;} 10. }
A.4行与9行不能通过编译,因为缺少方法名和返回类型 B.9行不能通过编译,因为只能有一个静态初始化器 C.编译通过,执行结果为:x=5 D.编译通过,执行结果为:x=3 | 得分: 满分: 2分
(单选题)下面代码输出结果是( )。 int x = 0,y = 0; do { if (x % 3 == 0) { x++; continue; } x++; y = y + x; } while (x < 4); System.out.println(y);
A.0 B.3 C.5 D.7 | 得分: 满分: 2分
(单选题)给出以下代码,请问该程序输出( )结果。 class Example{ static int i=1; static { ++i; } public static void main (String[]args){ increment(i,5); display(i); } static void increment(int n,int m){ n+=m; } static void display (int n) { System.out.print(n); } static{ ++i; } }
A.1 B.3 C.6 D.7 | 得分: 满分: 2分
(单选题)for循环语法格式如下: for(表达式1;表达式2;表达式3){循环体} 以下说法正确的是:
A.每次循环都要执行表达式1 B.表达式2可以返回任何数据类型 C.3个表达式均可省略,使用如下格式for(;;){循环体} D.循环体中必须有合法的java语句 | 得分: 满分: 2分
(单选题)将给定的数组变成如下格式的字符串,下列选项中,正确的是( )。 例如:[1,3,4]->"[1,2,3]"
A.String str = "["; for (int x=0; x<=arr.length ; x++){ if(x!=arr.length-1) str = str + arr[x] + ","; else str = str + arr[x] + "]"; } B.String str = "["; for (int x=0; x C.String str = "["; for (int x=0; x D.String str = "["; for (int x=0; x<arr.length+1 ; x++){ if(x!=arr.length-1) str = str + arr[x] + ","; else str = str + arr[x] + "]"; } | 得分: 满分: 2分
(单选题)下列程序输出结果是( )。 char c = ‘a‘; // ‘a‘ 的int值为97 if(c>100){ System.out.println(‘A‘); }else if(c>90){ System.out.println(‘B‘); }else if(c>80){ System.out.println(‘C‘); }else{ System.out.println(‘D‘); }
A.A B.B C.C D.D | 得分: 满分: 2分
(多选题)下列正确的表达式是 ( )。
A.byte b = 128; B.boolean b = null; C.long l=0xfffL; D.double d =0.9239d; | 得分: 满分: 2分
(多选题)对于如下类中的study()方法,请选择如下选项中,属于方法重载的是( ) public class Student{ public String study(String content){} }
A.public void study(int days){} B.public String study(String content,String title){} C.public String study(){} D.public void study(String title){} | 得分: 满分: 2分
(多选题)下列属于JAVA语言的特点是( )。
A.跨平台 B.支持多线程 C.面向对象 D.可以直接访问操作系统 | 得分: 满分: 2分
(多选题)Java中的继承,如下说法正确的是( )。
A.Java支持接口之间的多继承,也支持类之间的多继承。 B.Java中只支持单继承,即一个类只能有一个父类. C.当两个类存在所属关系(is a),才使用继承(is a,是一个。 说明该类是某类的一个特殊例子,简单之称为继承。) D.使用继承,可以使类之间产生关系,提供了多态的特性。 | 得分: 满分: 2分
(多选题)下列对面向过程和面向对象描述正确的是( )
A.面向对象以功能为核心,使用函数封装。 B.面向过程以功能为核心,使用函数封装。 C.面向对象以事物为核心,将具体的数据和功能封装到事物中。 D.面向过程以事物为核心,将具体的数据和功能封装到事物中。 | 得分: 满分: 2分
(多选题)循环统计1到100之间能被7整除的整数的个数, 代码输出正确的是:()。
A.int y = 1; int count = 0; while(y<=100){ if(y/7==0) count++; y++; } System.out.println(count); B.int y = 1; int count = 0; while(y<=100){ if(y%7==0) count++; y++; } System.out.println(count); C.int count = 0; for(int i=1;i<=100;i++){ if(i%7==0) count++; } System.out.println(count); D.int count = 0; for(int i=1;i<=100;i++){ if(i/7==0) count++; } System.out.println(count); | 得分: 满分: 2分
(多选题)给出以下代码,请问该程序的运行结果是什么? class A{ private int x=0; static int y=1; protected int z=2; } class B extends A{ void method(){ System.out.println(x); System.out.println(y); System.out.println(z); } } 下列说法正确的是( )。
A.程序编译错误,因为类B不能访问变量x。 B.程序编译成功,打印输出012。 C.程序编译错误,如果移走System.out.println(x)这条语句, 可使编译程序通过。 D.程序编译错误,因为变量x未在类B中定义。 | 得分: 满分: 2分
(多选题)对如下数组,说法正确的是( )。 int [] arr = {12,23,45,67};
A.获取数组中第三个元素的语法是arr[3] B.获取数组中第三个元素的语法是arr[2] C.该数组的最后一个元素的下标值为arr.length D.该数组的最后一个元素的下标值为arr.length-1 | 得分: 满分: 2分
(多选题)下列关于JDK的说法正确的是( )
A.开发一个Java程序,需要完整的JDK B.运行一个Java程序,需要完整的JDK C.运行一个Java程序,只需要JDK中的JRE D.以上说法都不对 | 得分: 满分: 2分
(多选题)下列选项中可以实现无限循环的是:()。
A.for(;;){} B.while(true){} C.do{}while(true); D.for(int i=0;i++){} | 得分: 满分: 2分
(多选题)如下变量的定义,double d = 1.5;int x=1,y=2,z=3;则正确的switch语句是( )
A.switch((int)d){ case 1:System.out.println(x);break; case 2:System.out.println(y);break; } B.switch(d){ case 1.5:System.out.println(x);break; case 2.0:System.out.println(y);break; } C.switch(x+y){ case 1:System.out.println(x);break; case 2:System.out.println(y);break; } D.switch(x+y){ case 1:System.out.println(x);break; case z:System.out.println(y);break; } | 得分: 满分: 2分
(多选题)下列程序中不会出现编译错误的是( )
A.short s1 = 3; short s2 = 5; s1 += s2; B.short s1 = 3; short s2 = 5; s1 = s1+s2; C.short s1 = 3; short s2 = 5; s1 = s1 * s2; D.short s1 = 3; short s2 = 5; s1 *= s2 ; | 得分: 满分: 2分
(多选题)下列关于do....while循环说法正确的是:
A.do....while循环,循环体至少执行一次 B.do....while循环和while循环只是语法不同,没区别 C.do....while循环先执行循环体,再执行boolean表达式,如果为true再执行循环体 D.以上说法都正确 | 得分: 满分: 2分
(多选题)下列关于成员变量默认值的描述中,正确的是( )。
A.byte类型的数据默认值是0 B.int类型的数据默认值是0 C.long类型的数据默认值是0 D.float类型的数据默认值是0.0f | 得分: 满分: 2分
(多选题)下列选项中不会出现语法编译错误的是:()。
A.long l = 999999; B.long l = 9999999999L; C.byte b = 90+40; D.int i = ‘A‘+‘中‘; | 得分: 满分: 2分
(多选题)下列关于Linux操作系统,描述正确的是( )。
A.Linux 是一个开源的操作系统 是一个类似Unix的操作系统 B.Linux 是主流的服务器操作系统,广泛应用于互联网、云计算、智能手机等领域 C.Linux 中的相对路径,使用“.”表示上一级目录,“..”表示当前路径 D.Linux 中使用"pwd"命令显示当前工作目录的内容 | 得分: 满分: 2分
(多选题)有以下代码 abstract class MyAbstractClass{ public abstract void m1(); //1 abstract protected void m2(){} //2 } class MySubClass extends MyAbstractClass{ void m1(){} //3 protected void m2(){} //4 } 问:这段代码哪些地方有错误?( )
A.//1 B.//2 C.//3 D.//4 | 得分: 满分: 2分
(多选题)Java接口中定义方法,正确的是( )。
A.public void imethod(); B.void imethod(); C.protected void imethod(); D.private void imethod(); | 得分: 满分: 2分
(多选题)在Java接口中,下列选项里有效的方法声明是( )。
A.protected void fun(); B.static void fun(); C.void fun(); D.public void fun(); | 得分: 满分: 2分
(多选题)请选出属于JDK的组成部分( )。
A.支持JAVA程序运行的一组类库 B.JVM C.支持JAVA程序开发的一组开发工具 D.一组软件测试工具 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |