不看OCJP考题,不会知道自己的Java基础有多差(一)
来源:互联网 发布:线程之间共享数据 编辑:程序博客网 时间:2024/05/22 12:39
不看OCJP考题,不会知道自己的Java基础有多差(一)
第一题
public class Mule { public static void main(String[] args) { boolean assert = true; if(assert) { System.out.println("assert is true"); } }}Which command-line invocations will compile?A. javac Mule.javaB. javac -source 1.3 Mule.javaC. javac -source 1.4 Mule.javaD. javac -source 1.5 Mule.java
这道题考察的知识点有assert关键字、javac命令行语句、jdk的版本问题
assert关键字,assert的意思是“断言”,Java用这个关键字来表示一个表达式永真。不过assert既然是关键字,那怎么还能用作变量名呢?不急,请往下看。
javac命令行语句,javac命令用来编译一个.java文件,其后所跟的是-source 1.3等是使用的jdk版本(注意高版本是可以兼容低版本的)。javac -source 1.3 Mule.java表示的是用jdk1.3将Mule.java编译为class文件
jdk的版本问题,Java从jdk1.4版本开始才使用assert这个关键字,也就是说在以前的版本中用assert这个单词作变量名是没有问题的。所以此题要想编译这个.java文件,就要使用jdk1.3及以下的版本
因此这道题的答案为B
第二题
import java.util.*;public class Explorer3 { public static void main(String[] args) { TreeSet<Integer> s = new TreeSet<Integer>(); TreeSet<Integer> subs = new TreeSet<Integer>(); for(int i = 606; i < 613; i++) { if(i%2 == 0) s.add(i); } subs = (TreeSet)s.subSet(608, true, 611, true); subs.add(629); System.out.println(s + " " + subs); }}What is the result?A. Compilation fails.B. An exception is thrown at runtime.C. [608, 610, 612, 629] [608, 610]D. [608, 610, 612, 629] [608, 610, 629]E. [606, 608, 610, 612, 629] [608, 610]F. [606, 608, 610, 612, 629] [608, 610, 629]
这道题考察的知识点有TreeSet集合的简单使用,以及subSet方法的原理
TreeSet,是按自然顺序排序的,也就是由小到大,set类的集合都不允许有相同的元素
subSet方法,(608, true, 611, true)取出的是s集合在608-611范围内的元素,两个true的意思是包括左右边界。但是此方法生成的子集合subs会有限制,比如向此集合里面添加小于608或大于611的数字就会出异常,在运行时会报出 java.lang.IllegalArgumentException: key out of range的异常。更改subs集合,s集合也会随之更改,反之亦然。
因此这道题的答案为B
以上属个人理解,如有不正之处,欢迎批评指正。
阅读全文
1 0
- 不看OCJP考题,不会知道自己的Java基础有多差(一)
- 不看OCJP考题你永远不知道自己的JAVA基础有多差(一)
- 不看OCJP考题你永远不知道自己的JAVA基础有多差(二)
- 不看OCJP考题你永远不知道自己的JAVA基础有多差(三)
- 不看OCJP考题你永远不知道自己的JAVA基础有多差(四)
- 不看OCJP考题你永远不知道自己的JAVA基础有多差(五)
- 不看OCJP考题你永远不知道自己的JAVA基础有多差(六)
- 不看OCJP考题你永远不知道自己的JAVA基础有多差(七)
- 不得不看的C语言中的基础问题(一)
- 知道自己在哪里,就不会迷失
- 女人的真心话,不看不知道,一看...~~~~~~-.-
- Java基础总结-Java面试常考题
- java基础部分面试常考题
- 厕所文学----不看是自己的损失
- java的oracle考试认证(OCJP)之路
- 不会定义自己的需求
- js【自己以前不会的】
- 怎样发布考题?急求!知道的速回!
- 动态代理
- mysql数据库填坑
- java动态代理
- 约束优化方法之拉格朗日乘子法与KKT条件
- 设备直通下,中断处理流程
- 不看OCJP考题,不会知道自己的Java基础有多差(一)
- 欢迎使用CSDN-markdown编辑器
- python学习之结构体
- CodeFestival 2017 Final 题解
- 【Android学习】View
- 第一篇:centos7下svn的安装与卸载
- web开发——1.概述
- PAT1040
- 一些关键字的使用解析