0
私のプログラムをコンパイルした後、クラスパスにクラスを追加する必要があります。アックスクラスのJavaのリフレクションとクラスローダー
Class NewUnit;
Constructor constructor;
ClassLoader myClassLoader = ClassLoader.getSystemClassLoader();
// Define a class to be loaded.
String classNameToBeLoaded = "monarchs_project.Axe";
NewUnit = myClassLoader.loadClass(classNameToBeLoaded);
constructor = NewUnit.getConstructor(int.class, int.class, int.class, int.class);
NewUnit newUnit = (NewUnit) constructor.newInstance(1, 1, 1, 1);
パラメータがintである:
そして、私は以下のコードのように、JavaリフレクションとClassLoaderを使用します。
しかし、動作しません。メソッドgetConstructor()は機能しません。おかげさまで
ありがとうございます!今それは動作します! – user3294746
コンストラクタは現在動作していますが、newUnitオブジェクトにクラスのインスタンスを作成することはできません。 IDEは「プロジェクトにNewUnitクラスを作成する」と言っています。 私はこれでこれを解決します: オブジェクトnewUnit = constructor.newInstance(0、0、0、0); – user3294746