传智播客java测试题_传智播客java测试题

1.        在JAVA中,下列哪些说法是正确的( ac)ac

A.java源文件的扩展名为.java

B.写好的java源程序可以直接运行

C.编写的源程序必须先编译后才能运行

D.程序员可以读懂扩展名为.class的文件

2.        下列标识符哪个是合法的( bd)0.5 bd

A.class

B.$abc

C.1234

D._name

3.        下面哪些赋值语句是正确的?(abd) abd

A. long test = 012;

B. float f = -412;

C. int other = (int) true;

D. double d = 0x12345678;

E. byte b = 128;

4.        在Java中,下列语句不能通过编译的有 (b)  bd

A. String s= “join”+ 3;

B. int a= “join”+3;

C. int a= ‘a’+5;

D. float f=5+5.5;

5.        设 a = 3,则表达式 (--a )<

A. 16

B. 8

C. 24

D. 12

6.        下列代码运行的结果是( )c

public static void main(String[] args) {c

int x = 4;

int y = 5;

if(x++>4 & ++y>5) {

x++;

}

System.out.println("x=" + x + ",y=" + y);

}

A. x=4,y=5

B. x=4,y=6

C. x=5,y=6

D. x=6,y=6

7.        尝试运行下面的代码会发生什么?(b ) b

public class Test {

public static void main(String[] args) {

boolean m = true;

if (m = false) {

System.out.println("true");

} else {

System.out.println("false");

}

}

}

A. 输出字符串”true”

B. 输出字符串”false”

C. 编译时错误

D. 运行时错误

8.        编译并运行以下代码将发生什么? ( e) 找不到符号

public static void main(String args[]){

char digit = 'a';

for (int i = 0; i < 10; i++){

switch (digit)

{

case 'x' :

{

int j = 0;

System.out.println(j);

}

default :

{

int j = 100;

System.out.println(j);

}

}

}

int i = j;

System.out.println(i);

}

A. 输出11次100

B. 输出10次100,然后抛出运行期异常

C. 编译错误,因为变量i不能在main() 方法中被声明2次

D. 编译错误,因为变量j不能在main() 方法中被声明2次

E. 以上都不对

9.        class Demo       b b

{

public static int fun(int c)

{

return  c+=2;

}

public static void main(String[] args)

{

int temp = fun(2);

System.out.println(temp);

}

}

A.  2

B.  4

C.  6

D.  8

10.        下面哪些函数是public void aMethod(){...}的重载函数?(bd) bd

A. void aMethod( ){...}

B. public int aMethod(int a, float b){...}

C. public void aMethod (){...}

D. public float aMethod (int m){…}

11.        在java中,关于数组描述正确的是( bd)bd

A.数组中的索引下标从1开始

B.存储在数组当中的数据都属于同一数据类型

C.通过数组名.length()能获得数组的长度

D.数组的最大索引下标是数组的长度减1

12.        下面程序的输出结果是什么( d)d

int[] arr = new int[10];

System.out.println(arr[0]);

A.编译不通过

B.运行时出错

C.输出null

D.输出0

13.        下面哪个语句正确地声明一个整型的二维数组( cd)cd

A. int a[][] = new int[][];

B. int b[10][10] = new int[][];

C. int c[][] = new int[10][10];

D. int []d[] = new int[10][10];

14.        以下代码输出是( c )c

class Demo {

public static void main(String[] args) {

int i = 0;

int sum = 0;

while (i <= 10) {

i++;

if (i % 2 != 0)

continue;

sum += i;

}

System.out.println(sum);

}

}

A.  55

B.  45

C.  35

D.  30

15.        和下面代码能完成相同的选项是(c)b

class Demo {

public static void main(String[] args) {

int i = 1;

int sum = 0;

while (i <= 100) {

if (i % 2 == 0) {

sum = sum + i;

}

i++;

}

System.out.println(sum);

}

}

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.上述全对

16.        下列有关类、对象和实例的叙述,正确的是哪一项?(d) d

A.类就是对象,对象就是类,实例是对象的另一个名称,三者没有差别

B.对象是类的抽象,类是对象的具体化,实例是对象的另一个名称

C.类是对象的抽象,对象是类的具体化,实例是类的另一个名称

D.类是对象的抽象,对象是类的具体化,实例是对象的另一个名称

17.        下面关于java中包的说法正确的是(acb )acd

A. 在java中可以使用import语句导入包

B. 在java中可以使用package语句导入包

C. 位于同一个包中的类,不需要导包就可以直接访问

D. 不同的包中可以出现类名相同的类

18.        下列有关抽象类的叙述正确的是哪项?(ac)acd

A.抽象类中一定含有抽象方法

B.抽象类既能被实例化也能被继承

C.抽象类的声明必须包含abstract关键字

D.抽象类中不能有构造方法    :keyi you 但是接口中不能有构造方法

19.        下列有关接口的叙述错误的是哪项?(ab)abcd d

A.接口中只能包含抽象方法和常量

B.一个类可以实现多个接口

C.类实现接口时必须实现其中的方法

D.接口不能被继承

20.        运行以下代码片段,输出结果是?( d )d

class X {

Y b = new Y();

X() {

System.out.print("X");

}

}

class Y {

Y() {

System.out.print("Y");

}

}

public class Z extends X {

Y y = new Y();

Z() {

System.out.print("Z");

}

public static void main(String[] args) {

new Z();

}

}

A. Z

B. YZ

C. XYZ

D. YXYZ

21.        下列关于类的继承的描述,正确的有( b d)bd

A. 一个类可以同时继承多个父类

B. 一个类可以具有多个子类

C. 子类会自动拥有父类所有的方法

D. 一个类继承另一个类需要使用 extends 关键字

22.        下列选项中关于java中this关键字的说法错误的有(c  )  bd

A. this关键字是一个对象的引用

B. this关键字可以用于引用当前类以外其他类型的对象

C. this可用于构造函数中,调用类本身重载的构造函数,但是必须写在首行

D. this可用于静态方法中

23.        下列关于构造函数的说法正确的是( a bd)abd

A. 方法名必须与类名相同

B. 使用new关键字创建对象时,java虚拟机会自动调用构造函数

C. 我们在定义一个类时,必须要声明至少一个构造函数

D. 构造函数中不能使用return语句 (可以有但是不能返回任何内容)

24.        编译并运行以下代码将发生什么?(  d)d

class MyClass {

int x;

MyClass(int i) {

x = i;

}

public static void main(String args[]) {

MyClass m1 = new MyClass(100);

MyClass m2 = new MyClass(100);

if (m1.equals(m2)) {

System.out.println("Both are equal");

} else {

System.out.println("Both are not equal");

}

}

}

A. 代码编译时报出错误提示信息“equals() 方法未定义”

B. 编译通过,抛出运行期异常.

C. 输出Both are equal.

D. 输出Both are not equal

25.        运行以下的main()方法,结果是?(c  )c

1   public static void main(String[] args)

2   {

3             String myString;

4             int x = 100;

5

6             if (x < 100) myString = "x is less than 100";

7             if (x > 100) myString = "x is greater than 100";

8             System.out.println(myString.length());

9   }

A. 编译时报出错误提示信息“变量myString没有被初始化”

B. 编译通过

C. 编译未能通过。但如果变量myString在第8行前的代码中被初始化,代码可以编译通过,运行时可以输出字符串myString的长度

D. 以上都不对

26.        有如下代码,请问哪些是正确的?(cd)

class ClassA{}

class ClassB extends ClassA{}

class ClassC extends ClassA{}

以及

ClassA p0 = new ClassA();a

ClassB p1 = new ClassB();ab

ClassC p2 = new ClassC();ac

ClassA p3 = new ClassB();ab

ClassA p4 = new ClassC();

A.p0 = p1;

B.p1 = p2;

C.p1 = (ClassB)p3;

D.p2 = (ClassC)p4;

27.        关于继承, 以下说法正确的是: (acd)acd

A.Java中只支持单继承, 一个类只能继承一个类, 但是可以有多个子类

B.一个类如果没有自己写无参构造方法, 那么子类将无法继承

C.子类可以当父类用, 父类不可以当子类用

D. 子类重写父类方法时访问权限不能更低

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值