Java每日一题day04-06选择题

day04

1.下列与队列结构有关联的是()

A 函数的递归调用

B 数组元素的引用

C 多重循环的执行

D 先到先服务的作业调度

正确答案: D

队列的修改是依先进先出的原则进行的

2.类所实现的接口以及修饰不可以是()。

A void

B public

C abstract

D final

正确答案: D

3.下列关于栈叙述正确的是(

)。

A 算法就是程序

B 设计算法时只需要考虑数据结构的设计

C 设计算法时只需要考虑结果的可靠性

D 以上三种说法都不对

正确答案: D

算法是指解题方案的准确而完整的描述,算法不等于程序,也不等于计算方法,所以 A 错误。设计算法时不仅要考虑对数据对象的运算和操作,还要考虑算法的控制结构。

4.下面关于abstract关键字描述错误的是()

A abstract关键字可以修饰类或方法

B final类的方法都不能是abstract,因为final类不能有子类

C abstract类不能实例化

D abstract类的子类必须实现其超类的所有abstract方法

正确答案: D

5.结构化程序的三种基本结构是( )

A 递归、迭代和回溯

B 过程、函数和子程序

C 顺序、选择和循环

D 调用、返回和选择

正确答案: C

6.对于abstract声明的类,下面说法正确的是

A 可以实例化

B 不可以被继承

C 子类为abstract

D 只能被继承

E 可以被抽象类继承

正确答案: E

7.1GB 的准确值是( )。

A 1024×1024 Bytes

B 1024 KB

C 1024 MB

D 1000×1000 KB

正确答案: C

1GB=1024MB=1024 × 1024KB=1024 × 1024 × 1024B 。

8.(多选)下面选项中,哪些是interface中合法方法定义?()

A public void main(String [] args);

B private int getSum();

C boolean setFlag(Boolean [] test);

D public float get(int x);

正确答案: A C D

9.(多选)下面哪些类实现或继承了 Collection 接口?

A HashMap

B ArrayList

C Vector

D Iterator

正确答案: B C

10.(多选)以下为 java 语法保留不能作为类名和方法名使用的是

A default

B int

C implements

D throws

正确答案: A B C D

day05

1.下面的程序 编译运行后,在屏幕上显示的结果是()

public class Test {

public static void main(String args[]) {

int x, y;

x = 5 >> 2;

y = x >>> 2;

System.out.println(y);

}

}

A 0

B 2

C 5

D 80

正确答案: A

5 >> 2 相当于 5除于2两次,等于1 ,>>> 表示无符号右移,高位用0 填充,0001右移两位 0000,所以选A

2.以下代码结果是什么?

public class foo {

public static void main(String sgf[]) {

StringBuffer a=new StringBuffer("A");

StringBuffer b=new StringBuffer("B");

operate(a,b);

System.out.println(a+"."+b);

}

static void operate(StringBuffer x,StringBuffer y) {

x.append(y);

y=x;

}

}

A 代码可以编译运行,输出“

AB.AB”。

B 代码可以编译运行,输出“

A.A”。

C 代码可以编译运行,输出“

AB.B”。

D 代码可以编译运行,输出“

A.B”。

正确答案: C

作对这道题的关键是要理解Java的值传递,关于值传递和引用传递的解释如下: 值传递:是指在调用函数时将实际参数传递到函数中,这样在函数中如果对参数进行修改,将不会影响到实际参数。 引用传递:是指在调用函数时将实际参数的地址直接传递到函数中,那么在函数中对参数所进行的修改,将影响到实际参数。 这道题中a、b(是引用的副本,Java中没有引用传递)传入operate()函数中,但最后a指向的对象的值发生了变化,而b指向的对象的值没有发生变化,这是因 为x.append(y);改变了a指向的对象的值,而y=x;并没有改变b指向对象的值,指向将y指向了x所指向的对象(之前y和b指向同一个对象)。

3.在JAVA中,假设A有构造方法A(int a),则在类A的其他构造方法中调用该构造方法和语句格式应该为()

A this.A(x)

B this(x)

C super(x)

D A(x)

正确答案: B

4.下面代码的运行结果是()

public static void main(String[] args){

String s;

System.out.println("s="+s);

}

A 代码编程成功,并输出”s=”

B 代码编译成功,并输出”s=null”

C 由于String s没有初始化,代码不能编译通过。

D 代码编译成功,但捕获到NullPointException异常

正确答案: C

5.在java7中,下列不能做switch()的参数类型是?

A int型

B 枚举类型

C 字符串

D 浮点型

正确答案: D

6.一个以”.java”为后缀的源文件

A 只能包含一个类,类名必须与文件名相同

B 只能包含与文件名相同的类以及其中的内部类

C 只能有一个与文件名相同的public类,可以包含其他类

D 可以包含任意类

正确答案: C

7.

public boolean returnTest()

{

try

{

return true;

}

catch (Exception e)

{

}

finally

{

return false;

}

}

以上代码返回值是什么?

A true

B false

正确答案: B

8.以下()不是合法的标识符?

A STRING

B x3x

C void

D deSf

正确答案: C

9.指出以下程序运行的结果是

public class Example{

String str=new String("good");

char[]ch={'a','b','c'};

public static void main(String args[]){

Example ex=new Example();

ex.change(ex.str,ex.ch);

System.out.print(ex.str+" and ");

System.out.print(ex.ch);

}

public void change(String str,char ch[]){

//引用类型变量,传递的是地址,属于引用传递。

str="test ok";

ch[0]='g';

}

}

A good and abc

B good and gbc

C test ok and abc

D test ok and gbc

正确答案: B

10.(多选)下列有关JAVA异常处理的叙述中正确的是()

A finally是为确保一段代码不管是否捕获异常都会被执行的一段代码

B throws是用来声明一个成员方法可能抛出的各种非运行异常情况

C final用于可以声明属性和方法,分别表示属性的不可变及方法的不可继承

D throw是用来明确地抛出一个异常情况

正确答案: A B D

day06

1.关于抽象类与最终类,下列说法错误的是?

A 抽象类能被继承,最终类只能被实例化。

B 抽象类和最终类都可以被声明使用

C 抽象类中可以没有抽象方法,最终类中可以没有最终方法

D 抽象类和最终类被继承时,方法可以被子类覆盖

正确答案: D

final修饰的类不能被继承

2.已知表达式int m[]={0,1,2,3,4,5,6};下面哪个表达式的值与数组下标量最大值相等?

A m. length()

B m. length-1

C m. length()+1

D m. length+1

正确答案: B

3.下列哪个对访问修饰符作用范围由大到小排列是正确的?

A private>default>protected>public

B public>default>protected>private

C private>protected>default>public

D public>protected>default>private

正确答案: D

4.有六个元素6,5,4,3,2,1顺序入栈,问下列哪一个不是合法的出栈序列?()

A 5 4 3 6 2 1

B 4 5 3 1 2 6

C 3 4 6 5 2 1

D 2 3 4 1 5 6

正确答案: C

5.阅读下列程序,选择哪一个是正确的输出结果

class HelloA{

public HelloA()

{

System.out.println("I’m A class ");

}

static

{

System.out.println("static A");

}

}

public class HelloB extends HelloA{

public HelloB()

{

System.out.println("I’m B class");

}

static{

System.out.println("static B");

}

public static void main (String[] args){

new HelloB();

}

}

A static A I’m A class static B I’m B class

B I’m A class I’m B class static A static B

C static A static B I’m A class I’m B class

D I’m A class static A I’m B class static B

正确答案: C

6.执行下列代码的输出结果是( )

public class Demo{

public static void main(String args[]){

int num = 10;

System.out.println(test(num));

}

public static int test(int b){

try

{

b += 10;

return b;

}

catch(RuntimeException e)

{

}

catch(Exception e2)

{

}

fifinally

{

b += 10;

return b;

}

}

}

A 10

B 20

C 30

D 40

正确答案: C

如果finally块中有return语句的话,它将覆盖掉函数中其他return语句,所以返回30。

7.下列代码的输出结果是_

boolean b=true?false:true==true?false:true;

System.out.println(b);

A true

B false

C null

D 空字符串

正确答案: B

8.(多选)在Java中下面Class的声明哪些是错误的?

A public abstract final class Test { abstract void method(); }

B public abstract class Test { abstract final void method(); }

C public abstract class Test { abstract void method() { } }

D public class Test { final void method() { } }

正确答案: A B C

9.(多选)下列关于构造方法的叙述中,错误的是()

A java语言规定构造方法名与类名必须相同

B java语言规定构造方法没有返回值,但不同void声明

C java语言规定构造方法不可以重载

D java语言规定构造方法只能通过new自动调用

正确答案: C D

10.(多选)下面哪些赋值语句是正确的()

A long test=012

B float f=-412

C int other =(int)true

D double d=0x12345678

E byte b=128

正确答案: A B D

你可能感兴趣的:(Java每日一题,java,数据结构,算法)