2019年10月29日_java_2
考点1 java程序命令文件名
编译java
程序的命令文件是( )
- A
java.exe
- B
javac.exe
- C
applet.exe
展开/折叠
正确答案: B解析
javac.exe
是编译功能javaCompiler
java.exe
是执行程序,用于执行编译好的.class
文件javadoc.exe
用来制作java
文档jdb.exe
是java
的调试器javaprof.exe
是剖析工具
考点2 循环
以下代码的循环次数是
1 | public class Test { |
- A 0
- B 1
- C 7
- D 无限次
展开/折叠
正确答案: D解析
每次循环都是减去2,7-2n恒不等于0,所以循环一直持续下去
考点3 C语言指针
int a[]= {1,2,3,4,5}
, int *p = a
, 下列表达式与 ++*p
相同的是()
- A
*++p
- B
a[0]
- C
++a[0]
- D
*p++
展开/折叠
正确答案: C解析
为什么java
的题中老是出现C语言的题*p
指针指向第一位,也就是a[0]
,++*p
就是++a[0]
。
考点4 负数求余运算
以下代码段执行后的输出结果为
1 | public class Test { |
- A -1
- B 2
- C 1
- D -2
展开/折叠
正确答案: D解析 求余运算本质上是减法
- 求余(取模运算)结果与被除数符号相同
- 取余模运算都属于除法,除法就可看作减法,-12-(-5)-(-5)
考点4 构造函数的正确格式
尝试编译以下程序会产生怎么样的结果?()
1 | public class MyClass { |
- A 编译错误将发生在(1),因为构造函数不能指定返回值
- B 编译错误将发生在(2),因为该类没有默认构造函数
- C 编译错误将在(3)处发生,因为该类没有构造函数,该构造函数接受一个int类型的参数
- D 该程序将正确编译和执行
展开/折叠
正确答案: C解析
(1)处代码,虽然方法名和类名相同,不过由于void的修饰,所以它并不是一个构造方法,只是一个普通方法。
因此这个类仍然只有默认的无参构造器,所以(2)处代码正确
(3)处代码,没有带参数构造器 所以错误。
考点5 静态成员和普通成员的执行顺序
以下代码执行后输出结果为( )
1 | public class Test |
- A blockAblockBblockA
- B blockAblockAblockB
- C blockBblockBblockA
- D blockBblockAblockB
展开/折叠
正确答案: A解析
- 静态块:用
static
申明,JVM
加载类时执行,仅执行一次 - 构造块:类中直接用{}定义,每一次创建对象时执行
- 执行顺序优先级:静态块>main()>构造块>构造方法
- 静态块按照声明的顺序执行,先执行
public static Test t1 = new Test()
;所以先输出blockA
, - 然后执行静态块,输出
blockB
, - 最后执行
main
方法中的Test t2 = new Test()
;输出blockA
。
考点6 String类的split方法
1 | String str = ""; |
输出结果为:
- A 0
- B 1
- C 出现异常
展开/折叠
正确答案: B解析
就是单纯的分片成列表,因为不含有’,
‘,所以就成为[""]
这样的列表
考点7 集合Collection接口子接口
以下哪些继承自Collection接口()
- A List
- B Set
- C Map
- D Array
展开/折叠
正确答案: AB解析
考点8 Java合法标识符
下列可作为java语言标识符的是()
- A
a1
- B
$1
- C
_1
- D
11
展开/折叠
正确答案: ABC解析
java
中标识符由
- 字母,数字,下划线, 美元符组成
- 首位不能为数字
Java
关键字不能当作Java
标识符