나는 유형 클래스에이를 통해 내부 javac의 태양 컴파일러 API 소스의 일부를 찾아왔다되었습니다com.sun.tools.javac.code 패키지 (javac 컴파일러)의 이상한 구문은 무엇이며 어떻게 작동합니까?
public Boolean visitTypeVar(TypeVar var1, Type var2) {
switch(null.$SwitchMap$com$sun$tools$javac$code$TypeTag[var2.getTag().ordinal()]) {
case 12:
if(Types.this.isSubtype(var1, var2)) {
return Boolean.valueOf(true);
} else {
if(Types.this.isCastable(var1.bound, var2, Types.this.noWarnings)) {
((Warner)Types.this.warnStack.head).warn(LintCategory.UNCHECKED);
return Boolean.valueOf(true);
}
return Boolean.valueOf(false);
}
case 13:
case 16:
return Boolean.valueOf(true);
case 14:
case 15:
default:
return Boolean.valueOf(Types.this.isCastable(var1.bound, var2, (Warner)Types.this.warnStack.head));
}
}
그것은이 문장에서 흥미로웠다 두 번째 줄의 :
null.$SwitchMap$com$sun$tools$javac$code$TypeTag[var2.getTag().ordinal()]
어떤 그것은 정수를 반환하는 것처럼 보입니다. 이게 어떻게 작동합니까?
아니 당신은하지 않았다. 당신은 디 컴파일 결과를보고있었습니다. 같은 것이 아닙니다. – EJP