AnubisTheKing
22-02-2003, 16:04
hi!
also sorry, wenn die frage für manche von euch zu dumm ist, aber ich weiss ehrlich nicht weiter.
habe diesen Codeausschnitt aus einem Programm :
protected void f(Y object)
{
Z z = new Y();
Y y = z;
}
Z ist ein interface
Y ist eine Klasse die Z implementiert
Aufgabenstellung ist den Fehler in dieser Methode zu finden.
Also ich habe das direkt mehrere Fragen:
Z z = new Y();
Kann ich ein Obejkt von einem interface anlegen? Geht das? Das machen die doch gerade hier oder?
Und warum benutzten die dann einfach den Konstruktor von Y? geht das weil Y selber Z implementiert hat? Geht das nur deshalb oder darf man imemr irgendeinen Konstruktor einer anderen Klasse verwende, das kann doch nciht sein oder?
Y y = z;
Hier wird doch versucht zwei unterscheidliche Typen zuzuweisen oder? Das eine wäre vom Typ Z das andere vom Typ Y. Oder geht das doch, weil z ja mit dem Konstruktor von Y erstellt worden ist?
Bis dann AnubisTheKing
also sorry, wenn die frage für manche von euch zu dumm ist, aber ich weiss ehrlich nicht weiter.
habe diesen Codeausschnitt aus einem Programm :
protected void f(Y object)
{
Z z = new Y();
Y y = z;
}
Z ist ein interface
Y ist eine Klasse die Z implementiert
Aufgabenstellung ist den Fehler in dieser Methode zu finden.
Also ich habe das direkt mehrere Fragen:
Z z = new Y();
Kann ich ein Obejkt von einem interface anlegen? Geht das? Das machen die doch gerade hier oder?
Und warum benutzten die dann einfach den Konstruktor von Y? geht das weil Y selber Z implementiert hat? Geht das nur deshalb oder darf man imemr irgendeinen Konstruktor einer anderen Klasse verwende, das kann doch nciht sein oder?
Y y = z;
Hier wird doch versucht zwei unterscheidliche Typen zuzuweisen oder? Das eine wäre vom Typ Z das andere vom Typ Y. Oder geht das doch, weil z ja mit dem Konstruktor von Y erstellt worden ist?
Bis dann AnubisTheKing