keySet() は java.util.Set を返します。NavigableSet へのキャストで ClassCastException がスローされないのはなぜですか? これは、実際のオブジェクトが java.util.Set 参照を持つ TreeSet である場合に発生する可能性があります。私にはそれが理解できません。
import java.util.*;
class A1{}
public class Main{
public static void main(String args[]){
SortedMap nvs=new TreeMap();
nvs.put(1,"one");
nvs.put(2,"two");
nvs.put(3,"three");
nvs.put(4,"four");
NavigableSet nss=(NavigableSet)nvs.keySet();
for(Object ob: nss){
System.out.print(nvs.get(ob)+", ");
}
}
}