前言
在更新Linkedkin 个人档案的时候
偶然发现他有技术检定测验
如果总成绩在前30%,会发给你技术认证徽章
如果第一次没考过则可以重考
如果第二次也没考过就要"等半年!!!"才能考第二次
个人感觉题目有点像OCA的考题,蛮适合正在学习Java观念
或工作一段时间但没深入研究Java的
如果有需要的人还请自行服用。
Qusestion:
Given this class, how would you make the code compile?
public class TheClass { private final int x;}A. public TheClass() { x += 77;}B.public TheClass() { x = null;}C.public TheClass() { x = 77;}D.private void setX(int x) { this.x = x;}public TheClass() { setX(77);}
Answer:D
解析:
这题因为TheClass 里的x属性为 private,所以无法透过外部去直接更动他的值
如果初学者不懂的话
可以去google public protect private 各自的权限
故ABC选项全部都不能选~
D选项因为写了一个setX()的方法,
Java中的 this表示 "这个class"
所以this.x 表示 这个class的x变数
也就是 private final int x ;