Dynamisches Instanziieren

Status
Nicht offen für weitere Antworten.
E

Eugen

Gast
Ich habe eine abstrakte Klasse AAA, von dieser leite ich in einem anderem Package einige konkrete Klassen BBB, CCC, DDD...

In einer Klasse XXX passiert Folgendes:

Code:
class XXX {
  ...
  AAA [] aaa;

  public void methode1 () {
    ...
    aaa = // An dieser Stelle möchte ich eine der Klassen (BBB, CCC, oder DDD...) instanziieren
             //  der Name der Klasse wird aus einer Datei ausgelesen 
    ...
  }
  ...
}

Desweiteren gibt es keine Liste von Klassen - die Klassen gibt es nur in dieser anderen Package sozusagen als Erweiterung des Pakets. Also muss das irgendwie mit String geschehen. Sowas Ähnliches wie

Class.forName("CCC");

Nur ist es ja bei mir ein Array von Klassen.

Dake für evtl. Tipps ;-)
 
Wenn no-args Konstruktor vorhanden ist, legt man ein neues Object so an:
Code:
Object object = null;
      try {
          Class classDefinition = Class.forName(className);
          object = classDefinition.newInstance();
      } catch (InstantiationException e) {
          System.out.println(e);
      } catch (IllegalAccessException e) {
          System.out.println(e);
      } catch (ClassNotFoundException e) {
          System.out.println(e);
      }
Wenn die Anzahl der Objekten vorhanden ist, erzeugt man das Array so:
Code:
aaa = new AAA[anzahl];
andernfalls
Code:
List l = new ArrayList();
//objekte einzufuegen
aaa = (AAA[])l.toArray();
Wenn der Typ des Elements von Array nicht vorhanden ist, erzeugt man das Array so:
Code:
Class componentClass = Class.forName(className);
Object result = Array.newInstance(componentClass, anzahl);
Alles andere zum Thema heir.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Unterschied: Polymorphie und Dynamisches Binden Allgemeine Java-Themen 8
kodela Dynamisches Array in einer Klasse Allgemeine Java-Themen 5
N Eclipse Dynamisches-Web-Project auf anderen Rechner transportieren Allgemeine Java-Themen 5
looparda Dynamisches Konsolenprogramm Allgemeine Java-Themen 3
T Dynamisches p:graphicimage im Datagrid Allgemeine Java-Themen 7
C Dynamisches und sortiertes Auslesen von Properties Allgemeine Java-Themen 2
P Dynamisches Binden Allgemeine Java-Themen 7
X Dynamisches hinzufügen von Panles Allgemeine Java-Themen 4
A Dynamisches Enum? Allgemeine Java-Themen 2
S dynamisches Array für Primfaktorzerlegung Allgemeine Java-Themen 13
S Dynamisches Manipulieren/Laden von Klassen Allgemeine Java-Themen 4
Z Dynamisches JPanel Allgemeine Java-Themen 10
hdi Dynamisches Instantiieren (Reflections) Allgemeine Java-Themen 4
H2SO3- dynamisches anlegen der dimensionaltität eines arrays Allgemeine Java-Themen 6
reibi Klassenpfad mal anders - dynamisches Laden einer Klasse Allgemeine Java-Themen 7
lumo "Exzessiv" dynamisches generieren Allgemeine Java-Themen 6
P dynamisches Array / Vector Allgemeine Java-Themen 2
R Dynamisches Laden von JNI-Bibliotheken Allgemeine Java-Themen 4
N Mehrdimensionales dynamisches Array Allgemeine Java-Themen 3
T Dynamisches laden von java Klassen Allgemeine Java-Themen 2
B Dynamisches Linken Allgemeine Java-Themen 15
M Dynamisches ausführen von methoden unbekannter klassen Allgemeine Java-Themen 6
V dynamisches laden von klassen Allgemeine Java-Themen 8
C Dynamisches Nachladen von JARs (Plugin) Allgemeine Java-Themen 3
S Dynamisches Casten Allgemeine Java-Themen 5
M Statisches und dynamisches Binden? Allgemeine Java-Themen 2
S Dynamisches Feld generieren. Allgemeine Java-Themen 10
B dynamisches Laden aller Klassen in einem Ordner ?? Allgemeine Java-Themen 5
W Objekte per Reflexion instanziieren Allgemeine Java-Themen 7
B Verschiedene Objekte in Abhängigkeit eines Typs instanziieren. Allgemeine Java-Themen 17
C JWS: Klasse aus zweitem JAR instanziieren Allgemeine Java-Themen 2

Ähnliche Java Themen

Neue Themen


Oben