Java является нерациональной https://hackernoon.com/java-is-unsound-28c84cb2b3f#.8tf5qumlbниже код компилирует в некотором IDE, а не в каком-то IDE «Java является нерациональным»
В этой статье типобезопасности Java обсуждается и компилирует в некоторых Java-версии, а не компиляции в некоторых Java версия.
class Unsound {
static class Constrain<A,B extends A>{}
static class Bind<A> {
<B extends A>
A upcast(Constrain<A,B> constrain , B b){
return b;
}
}
static <T,U> U coerce(T t){
Constrain<U,? super T> constrain = null;
Bind <U> bind = new Bind<U>();
return bind.upcast(constrain,t);
}
public static void main(String ...s){
String zero = Unsound.<Integer,String>coerce(0);
}
}
https://raw.githubusercontent.com/namin/unsound/master/doc/unsound-oopsla16.pdf
Так что, если они говорят, что это сводится к нулю указатель ошибки. Но в отличие от большинства нуль-указатель ошибок
Так что просто не в состоянии понять его компиляции или неприменение компиляции на разных IDE
Открытая ошибка также есть связанные с ним https://bugs.openjdk.java.net/browse/JDK-8054941
и затмение также https://bugs.eclipse.org/bugs/show_bug.cgi?id=510900
Почему это компилируется в некоторой версии, а не в некоторой версии. Что-то решено или еще предстоит решить? – SarthAk
Это лучше, чем предыдущая попытка. Но в чем вопрос? – luk2302
Если ваш вопрос «должен скомпилировать ваш код», ответ будет отрицательным. Если это так, у компилятора есть ошибка. –