Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Objekte von Klassen die erst zur Laufzeit bekannt sind erstellen
Ich stehe da schon längere Zeit bei einem Problem an und komme nicht wirklich weiter.
Ich bin gerade dabei das ich mir eine Factory Klasse Programmiere die ein Objekt von einer Klasse erzeugen soll wo ich nur den Klassennamen als String kenne.
Desweiteren soll noch der Konstruktor aufgerufen werden wobei alle Klassen von denen ich Objekte erzeugen will von einer Abstrakten Klasse abgeleitet werden und nur den super Konstruktor aufrufen.
Nun mittlerweile bin ich ja schon so weit das ich weiß das es mit der Reflection API funktionieren sollte.
Die Klasse kann ich ja so herausfinden:
Code:
Class cTemp = Class.forName(name);
Ein Objekt würde ich dann ja so erzeugen:
Code:
Object topping = cTemp.newInstance();
Aber wie rufe ich da jetzt den Konstruktor auf?
Der Konstruktor von der Abstrakten Klasse lautet:
Code:
public AbstractClass(String name, float price, int quantity) {
this.name = name;
this.price = price;
this.quantity = quantity;
}
So habe erst jetzt wieder mal Zeit gehabt bei meinem Projekt weiterzumachen.
Jetzt habe ich ein Problem und zwar gibt mir Eclipse sofort immer folgendes aus:
Usage: javaw [-options] class [args...]
(to execute a class)
or javaw [-options] -jar jarfile [args...]
(to execute a jar file)
where options include:
-client to select the "client" VM
-server to select the "server" VM
-hotspot is a synonym for the "client" VM [deprecated]
The default VM is client.
-cp <class search path of directories and zip/jar files>
-classpath <class search path of directories and zip/jar files>
A ; separated list of directories, JAR archives,
and ZIP archives to search for class files.
-D<name>=<value>
set a system property
-verbose[:class|gc|jni]
enable verbose output
-version print product version and exit
-version:<value>
require the specified version to run
-showversion print product version and continue
-jre-restrict-search | -jre-no-restrict-search
include/exclude user private JREs in the version search
-? -help print this help message
-X print help on non-standard options
-ea[:<packagename>...|:<classname>]
-enableassertions[:<packagename>...|:<classname>]
enable assertions
-da[:<packagename>...|:<classname>]
-disableassertions[:<packagename>...|:<classname>]
disable assertions
-esa | -enablesystemassertions
enable system assertions
-dsa | -disablesystemassertions
disable system assertions
-agentlib:<libname>[=<options>]
load native agent library <libname>, e.g. -agentlib:hprof
see also, -agentlib:jdwp=help and -agentlib:hprof=help
-agentpath:<pathname>[=<options>]
load native agent library by full pathname
-javaagent:<jarpath>[=<options>]
load Java programming language agent, see java.lang.instrument
-splash:<imagepath>
show splash screen with specified image