Ich möchte wissen, ob es möglich ist, den Typ eines Parameters zu setzen, der der Typ der Klasse ist, die eine bestimmte Schnittstelle implementiert. Sehen Sie einige Code wird sich die Frage deutlicher:Wie setzt man den Typparameter der implementierenden Klasse der Schnittstelle?
interface A {
A sum (???? another);
}
class AClass implements A {
private int internalStuff;
A public sum (???? another) {
// I want to access another.internalStuff in a type safe fashion
}
}
ich natürlich ersetzen kann ???? mit A-Typ und innerhalb AClass.sum, werfen Sie es auf AClass, aber das ist hässlich. Kann "????" ersetzt werden mit einer aussagekräftigen Typdeklaration?
Seltsame Syntax, aber semantisch macht Sinn. Danke –
Sie könnten auch abstrakte Klasse mit geschützten Variablen verwenden – Gaskoin