class Vehicle {
int vno;
String name;
public Vehicle(int vno, String name) {
this.vno = vno;
this.name = name;
}
public String toString() {
return vno + ":" + name;
}
}
and this code fragment:
Set<Vehicle> vehicles = new TreeSet<>();
vehicles.add(new Vehicle(10123, "Ford"));
vehicles.add(new Vehicle(10124, "BMW"));
System.out.println(vehicles);
What is the result?
A.
10123:Ford
10124:BMW
10124:BMW
B.
10124:BMW
10123:Ford
10123:Ford
C. A compilation error occurs.
D. A ClassCastException is thrown at run time.
題解
題目提供的程式會在第21行拋出ClassCastException,因為TreeSet的元素必須要實作Comparable介面,才可以進行自動排序。