Ich habe es versäumt, dieses Problem zu googlen. Warum würde diese Zeile einen Kompilierungsfehler erzeugen?Code mit Generika wird nicht kompiliert
wrapper.doSmth(wrapper.getCurrent());
Ich bin mit Java 7.
public class App {
Wrapper<?> wrapper;
class Generic<T>{
}
class Wrapper<T>{
Generic<T> current;
public void doSmth(Generic<T> generic){
}
public Generic<T> getCurrent(){
return current;
}
}
public void operation(){
wrapper.doSmth(wrapper.getCurrent());
}
}
Der Fehler ist:
Error:(25, 24) java: method doSmth in class App.Wrapper<T> cannot be applied to given types;
required: App.Generic<capture#1 of ?>
found: App.Generic<capture#2 of ?>
reason: actual argument App.Generic<capture#2 of ?> cannot be converted to conf.App.Generic<capture#1 of ?> by method invocation conversion
Können Sie den tatsächlichen Kompilierungsfehler posten? – Waterbagel
@Waterbagel Ich habe meinen Post bearbeitet, um eine Fehlermeldung zu enthalten – doctorgester
Und vielleicht könnten Sie uns sagen, was dieser Code soll; Welches Problem wollen Sie lösen? – GhostCat