Zugehörigkeit einer inneren Klasse
Von: , Frage gestellt am So, 22. Jan 2006
Hallo,
ich habe eine Klasse, die Referenzen auf Objekte einer inneren Klasse rausgibt; die innere Klasse implementiert dazu ein öffentliches Interface. Diese Referenzen sollen später wieder an die äußere Klasse zurückgegeben werden, wobei ich aber sicherstellen möchte, dass die referenzierten Objekte wirklich zu der entsprechenden Instanz der äußeren Klasse gehören (und nicht zu einem _anderen_ Objekt der äußeren Klasse).
Das scheint nur so zu funktionieren:
public interface Knoten{ }
public class Graph {
public Knoten neuerKnoten() { return new MeinKnoten(); }
public boolean istMeinKnoten(Knoten i) {
return (i instanceof MeinKnoten)
&& ((MeinKnoten)i).graph() == this;
}
class MeinKnoten implements Knoten {
Graph graph() { return Graph.this; }
}
}
Gibt es einen einfacheren Weg dazu, bei dem die graph() Methode in der inneren Klasse nicht notwendig ist?
Viele Grüße, Daniel
