Java每日一练(2017/6/20)

题目要求 本期题目: (单选题) 1、若有定义:byte[]x={11,22,33,﹣66};其中0≤k≤3,则对x数组元素错误的引用是() A x[5-3] B x[k] C x[k+5] D x[0]


(单选题)2、以下程序段的输出结果为: publicclassEqualsMethod { publicstaticvoidmain(String[] args) { Integer n1 = newInteger(47); Integer n2 = newInteger(47); System.out.print(n1 == n2); System.out.print(","); System.out.println(n1 != n2); } } A false,false B false,true C true,false D true,true


(单选题)3、有以下类定义: abstractclassAnimal{ abstractvoidsay(); } publicclassCat extendsAnimal{ publicCat(){ System.out.printf("Iam a cat"); } publicstaticvoidmain(String[] args) { Catcat=newCat(); } } 运行后: A I am a cat B Animal能编译,Cat不能编译 C Animal不能编译,Cat能编译 D 编译能通过,但是没有输出结果

上期练习题答案公布栏

(单选题) 1、对于上面这段代码,以下说法正确的是:

publicclassTest

{

publicintx;

publicstaticvoidmain(String []args)

{

System.out. println("Value is"+ x);

}

}

A 程序会打出 "Value is 0"

B 程序会抛出 NullPointerException

C 非静态变量不能够被静态方法引用

D 编译器会抛出 "possible reference before assignment"的错误

正确答案是:C

解析:非静态成员只能被类的实例化对象引用,因此这里在静态方法中访问x会造成编译出错


(单选题) 2、下面有关java基本类型的默认值和取值范围,说法错误的是?

A 字节型的类型默认值是0,取值范围是-2^7—2^7-1

B boolean类型默认值是false,取值范围是true\false

C 字符型类型默认是0,取值范围是-2^15 —2^15-1

D long类型默认是0,取值范围是-2^63—2^63-1

正确答案是:C

解析:

java中,char占16bit、byte占8bit、short占16bit、int占32bit、long占64bit、float占32bit、double占64bit。

只有char是无符号类型的。

字符型类型占用的是16位,2字节,但是字符型类型是无符号类型的,所以其取值范围是0 ~ 2^16-1 而不是 -2^15 ~ 2^15-1。


(单选题) 3、What will happen when you attempt to compile and run the

following code?

public class Test{

static{

int x=5;

}

static int x,y;

public static void main(String args[]){

x--;

myMethod( );

System.out.println(x+y+ ++x);

}

public static void myMethod( ){

y=x++ + ++x;

}

}

A compiletime error

B prints:1

C prints:2

D prints:3

E prints:7

F prints:8

正确答案是:D

解析:

1.静态语句块中x为局部变量,不影响静态变量x的值

2.x和y为静态变量,默认初始值为0,属于当前类,其值得改变会影响整个类运行。

3.java中自增操作非原子性的

main方法中:执行x--后 x=-1 调用myMethod方法,x执行x++结果为-1(后++),但x=0,++x结果1,x=1 ,则y=0

x+y+ ++x,先执行x+y,结果为1,执行++x结果为2,得到最终结果为3


(不定项选择题) 4、java中下面哪些是Object类的方法()

A notify()

B notifyAll()

C sleep

D wait()

正确答案是:ABD

解析:在根类Object中包含一下方法:

  1. clone();
  2. equals();
  3. finalize();
  4. getClass();[align=left][/align]
  5. notify(),notifyAll();
  6. hashCode();
  7. toString();
  8. wait();

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

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

原始发表时间:2017-06-20

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏淡定的博客

python入门之面向对象

12910
来自专栏DT乱“码”

java父类,子类静态块和构造方法的执行顺序

一个面试笔试题中没什么什么卵用但经常出的题,父类,子类静态块和构造方法的执行顺序 package com.gulf.test; public class Fa...

249100
来自专栏土豆专栏

Java面试之数据类型(一)

封装类是引用类型,基本类型在传递参数的时候都是按值传递,而封装类型是按引用传递的(其实引用也是按值传递的,但是传递的是对象的地址)

22420
来自专栏黑泽君的专栏

Java中this和super的区别和应用

23410
来自专栏从流域到海域

《Java程序设计基础》 第8章手记Part 1

本章主要内容 Part 1 - 子类的创建 - 在子类中访问父类的成员 - 覆盖父类的方法 - …… 本章主要讲继承、抽象类和接口,这...

23250
来自专栏desperate633

深入理解javascript中的原型原型的概念使用原型给对象添加方法和属性使用原型对象的属性和方法原型的陷阱小结

原型prototype是javascript中极其重要的概念之一,但也是比较容易引起混淆的地方。我们需要花费一些时间和精力好好理解原型的概念,这对于我们学习ja...

10020
来自专栏Java与Android技术栈

Scala学习笔记(五)

一个方法只要是没有它的实现(没有等号或没有方法体),它就是抽象的,在子类中覆写或者覆写接口中的非抽象方法(方法有具体实现)要使用override关键字。

10140
来自专栏无题

谈谈Java中equals和==的区别和使用场景

讨论一下Java中equals和==的区别,这个问题看似浅显,还是有不少情况需要注意。阅览了网上一些文章,都比较片面。在此做一下详细的整理。 先直接上结论::...

41250
来自专栏xx_Cc的学习总结专栏

OC-基础总结(一)

405110
来自专栏AILearning

反射的应用与理解

反射就是把Java类中的各种成分映射成相应的java类 <代理模式会用到反射,SSH框架会用到框架> 反射使用用中用到的是:字节码(获取类的字节码的三种方式) ...

22260

扫码关注云+社区

领取腾讯云代金券