文章目录
  1. 1. 一、概述:收集那些神坑好玩的JAVA面试题
  2. 2. 二、题目:
    1. 2.1. 001:下面代码片段输出是什么:
      1. 2.1.1. 答案:
      2. 2.1.2. 考点:
    2. 2.2. 002:下面代码片段输出是什么:
      1. 2.2.1. 答案:
      2. 2.2.2. 考点:

一、概述:收集那些神坑好玩的JAVA面试题

二、题目:

001:下面代码片段输出是什么:

1
2
3
4
5
6
public static void main(String[] args) {
String s = " Hello "; //两边各有一个空格
s+=" World "; //两边各有一个空格
s.trim(); //考虑:s=s.trim();
System.out.println(s);
}

答案:

1
" Hello  World "

考点:

  • 1、字符串对象是不可变的。
  • 2、内存的分配情况,垃圾回收。

002:下面代码片段输出是什么:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
public class OverloadVsOverride {

public boolean equals(OverloadVsOverride other){ //这是重载
System.out.println("equals");
return true;
}

public static void main(String[] args) {
Object o1 = new OverloadVsOverride();
Object o2 = new OverloadVsOverride();

OverloadVsOverride o3 = new OverloadVsOverride();
OverloadVsOverride o4 = new OverloadVsOverride();
if (o1.equals(o2)) { //调用Object方法的equals方法,比地址:false
System.out.println("o1 equals o2");
}
if (o3.equals(o4)) {
System.out.println("o3 equals o4");
}
}

}

答案:

1
2
equals
o3 equals o4

考点:

  • override & overload(重载和重写)
  • 重载方法在编译时起作用(例如,静态绑定),重写方法在运行时起作用(例如,动态绑定)。
文章目录
  1. 1. 一、概述:收集那些神坑好玩的JAVA面试题
  2. 2. 二、题目:
    1. 2.1. 001:下面代码片段输出是什么:
      1. 2.1.1. 答案:
      2. 2.1.2. 考点:
    2. 2.2. 002:下面代码片段输出是什么:
      1. 2.2.1. 答案:
      2. 2.2.2. 考点: