Java每日一练(2017/8/21)

每日一句

学的到东西的事情是锻炼,学不到的是磨练。

查看以前的所有练习题目以及答案:https://mp.weixin.qq.com/mp/homepage?__biz=MzA5MTMyNTI0Nw==&hid=13&sn=78e12cc1bdd8b15eef316f849a8b55b4#wechat_redirect

本期题目:

(单选题)1、对于以下代码段,4个输出语句中输出true的个数是( )。

class A{}

class B extends A{}

class C extends A{}

class D extends B{}

A obj = new D();

System.out.println(obj instanceof B);

System.out.println(obj instanceof C);

System.out.println(obj instanceof D);

System.out.println(obj instanceof A);

A 1

B 2

C 3

D 4


(单选题)2、 代码System. out. println(10 % 3 * 2);将打印出?

A 1

B 2

C 4

D 6


(不定项选择题) 3、对于构造方法,下列叙述正确的是( )。

A 构造方法的优先级一般比代码块低。

B 构造方法的返回类型只能是void型。

C 构造方法的主要作用是完成对类的对象的初始化工作。

D 一般在创建新对象时,系统会自动调用构造方法。


(单选题)4、 java中用()字指明继承关系.用()关键字指明对接口的实现。

A implementsextends

B extendsimplements

C extend implement

D implement extend

(单选题)5、如果希望某个变量只可以被类本身访问和调用,则应该使用下列哪一种访问控制修饰?

A public

B private

C private protected

D protected

上期答案:

(单选题) 1、Java中只有整型才能使用的运算符为?

A *

B /

C %

D +

正确答案是:C

解析:ABD选项的操作符都可用于int 但是结果不一定是int

所以只有%取余操作,只适用于整型


(不定项选择题)2、Consider the following code:

Integer s=newInteger(9);

Integer t=newInteger(9);

Long u=newLong(9);

Which testwould return true?

A (s==u)

B (s==t)

C (s.equals(t))

D (s.equals(9))

E (s.equals(newInteger(9))

正确答案是:CDE

解析:

(s==u) ,因为, s 是 Integer 类型, u 是 Long 类型,两个不同类型的引用不能进行 == 比较。 (s==t) , s 是指向一个 9 的引用,而 t 也是一个指向 9 的引用,虽然都是指向 9 ,但却是指向不同的 9 ,即是两个不同的引用。因此 == 比较返回的是假。 (s.equals(t)) , Integer 的 equals 方法如下: public boolean equals(Object obj) { if (obj instanceof Integer) { return value ==((Integer)obj).intValue(); } return false ; } 是 Integer 的实例且 value 值也相等的情况下返回真,其他返回假。在这里, s 和 t 都是 Integer 类型且值都为 9 ,因此结果为真。 (s.equals(9)) , 在进行 equals 比较之前,会对 9 调用 Integer.valueOf方法,进行自动装箱 , 由于 IntegerCache 中已经存在 9 ,所以,直接返回其引用,引用相同, equals 就自然相同了。所以结果为真。 (s.equals( new Integer(9)) ,直接创建了一个新的 Integer 实例,但且值也为 9 ,所以,满足条件,返回真。


(单选题)3、下面的程序段创建了BufferedReader类的对象in,以便读取本机c盘my文件夹下的文件1.txt。File构造函数中正确的路径和文件名的表示是( )。

Filef = new File( 填代码处);

file =new FileReader(f);

in=new BufferedReader(file);

A "./1.txt"

B "../my/1.txt"

C "c:\\my\\1.txt"

D "c:\ my\1.txt"

正确答案是:C

解析:"c:\\my\\1.txt" "c:/my/1.txt" 都是正确的答案


(单选题) 4、已知表达式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

解析:

1.数组的下标是从0 开始的,所以数组的下标最大为5。

2.m.length的值为6。

所以,答案为:5=m.length()-1


(单选题)5、下面的代码运行的结果是:

class B extends Object

{

static

{

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

}

public B()

{

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

}

}

class A extends B

{

static

{

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

}

public A()

{

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

}

}

public class Testclass

{

public static void main(String[] args)

{

new A();

}

}

A Load B ->Create B->Load A -> Create A

B Load B -> Load A ->Create B ->Create A

C Load B -> Create B-> Create A -> Load A

D Create B ->Create A ->Load B ->Load A

正确答案是:B

解析:初始化块在构造器执行之前执行,类初始化阶段先执行最顶层父类的静态初始化块,依次向下执行,最后执行当前类的静态初始化块;创建对象时,先调用顶层父类的构造方法,依次向下执行,最后调用本类的构造方法。

本文分享自微信公众号 - java学习(javaxxf)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-08-21

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏吾爱乐享

java学习之数组元素排序,冒泡排序和选择排序

12840
来自专栏Golang语言社区

go interface

Go不是一种典型的OO语言,它在语法上不支持类和继承的概念。 没有继承是否就无法拥有多态行为了呢?答案是否定的,Go语言引入了一种新类型—Interface,它...

35450
来自专栏决胜机器学习

PHP面向对象核心(二)——继承、多态、接口

PHP面向对象核心(二) (原创内容,转载请注明来源,谢谢) 三、继承与多态 3.1 继承 1、继承是类级别的复用,关键词为extends;多态是方法级别的复用...

417120
来自专栏JavaEdge

青铜到王者 ,快速提升你 Go语言的段位! "狗"语言实战(二)- 基础语法1 变量定义

15540
来自专栏coding for love

JS原生引用类型解析7-Promise类型

ES6引入了一个全新的对象Promise,用于表示一个异步操作的最终状态(完成或失败),以及其返回的值。Promise最直接的好处就是链式调用,另外在错误捕获上...

8010
来自专栏python3

python for循环

当range执行完之后,代码执行else部分代码。如果遇到break,终止循环,不会走else代码

46410
来自专栏张善友的专栏

C# 内部类

        C#中的内部类能够使用外部类定义的类型和静态方法,但是不能直接使用外部类的实例方法,直接看来,外部类对于内部类的作用更像是一个命名空间,在C#中...

26680
来自专栏大闲人柴毛毛

稳扎稳打JavaScript(一)——作用域链内存模型

几个概念 在开始之前,先了解几个概念。 1.1. 作用域 作用域是指当前正在执行的代码能够访问到变量的范围; 每个函数都有各自的作用域,存储函数所有的局部变量...

50380
来自专栏全沾开发(huā)

搞懂JavaScript中的连续赋值

搞懂JavaScript中的连续赋值 前段时间老是被一道题刷屏,一个关于连续赋值的坑。 遂留下一个笔记,以后再碰到有人问这个题,直接...

44760
来自专栏前端小叙

JS中函数声明与函数表达式的异同

相同点 注:函数声明和函数表达式的相同点包括但不限于以下几点 函数是一个值,所以和其他值一样,函数也可以进行被输出、被赋值、作为参数传给其他函数等相关操作,不...

32250

扫码关注云+社区

领取腾讯云代金券