hmm ich hab da eher eine kleine - wahrscheinlich dumme - frage:
also mein ziel ist es mehere klassen zu schreiben, die sich slebst verwalten. dazu will ich , dass sich objekte nicht von außen einsehen oder direkt verändern lassen. dies soll alles über statische methoden laufen, in denen ich genau festlegen, was zu tun ist. ich wollte in guter objekt-orientierten arbeitsweise dies über vererbung machen und zwar ähnlich wie folgt:
da beide Unterklassen von Oberklasse erben bekommen ja beide die methode create(). leider wird hier in den Unterklassen kein Unterklassen-onjekt erzeugt, sondern ein Oberklassen-objekt, oder sehe ich das falsch? wie bekomme ich das hin, dass in der geerbten methode ein Unterklassen-onjekt erzeugt wird?
prinzipiell hätte ich ja eine static abtract-methode geschrieben, aber das geht ja nicht.
Wenn jemand einen vorschlag hat, dann bitte her damit. ich wäre euch sehr verbunden.
.MamboKurt
also mein ziel ist es mehere klassen zu schreiben, die sich slebst verwalten. dazu will ich , dass sich objekte nicht von außen einsehen oder direkt verändern lassen. dies soll alles über statische methoden laufen, in denen ich genau festlegen, was zu tun ist. ich wollte in guter objekt-orientierten arbeitsweise dies über vererbung machen und zwar ähnlich wie folgt:
Code:
// Oberklasse --------------------
import java.util.vecotr;
class Oberklasse
{
private Oberklasse(){}
public static void create()
{
objectvector.add(new Oberklasse());
}
public static void doSomeFancyStuffWithTheObjectsInTheVector()
{
// hier wir was mit den Objekten gemacht, die im Vector stehen
}
protected static Vector objectvector = new Vector();
}
// Unterklasse I ----------------
class UnterklasseI extends Oberklasse
{
private UnterklasseI(){}
public static void doSomeCrazyStuffWithTheObjectsInTheVector();
{
// hier wir was mit den Objekten gemacht, die im Vector stehen
}
}
// Unterklasse II ---------------
class UnterklasseII extends Oberklasse
{
private UnterklasseII(){}
public static void doSomeCoolStuffWithTheObjectsInTheVector();
{
// hier wir was mit den Objekten gemacht, die im Vector stehen
}
}
da beide Unterklassen von Oberklasse erben bekommen ja beide die methode create(). leider wird hier in den Unterklassen kein Unterklassen-onjekt erzeugt, sondern ein Oberklassen-objekt, oder sehe ich das falsch? wie bekomme ich das hin, dass in der geerbten methode ein Unterklassen-onjekt erzeugt wird?
prinzipiell hätte ich ja eine static abtract-methode geschrieben, aber das geht ja nicht.
Wenn jemand einen vorschlag hat, dann bitte her damit. ich wäre euch sehr verbunden.
.MamboKurt