16

class1からclass2を呼び出したいのですが、class2には参照するメイン関数がありません。Class2.main(args);

4

5 に答える 5

23

あなたが持っていると仮定します

クラス1

public class Class1 {
    //Your class code above
}

クラス2

public class Class2 {
}

その後、さまざまな方法で Class2 を使用できます。

クラス フィールド

public class Class1{
    private Class2 class2 = new Class2();
}

メソッド フィールド

public class Class1 {
    public void loginAs(String username, String password)
    {
         Class2 class2 = new Class2();
         class2.invokeSomeMethod();
         //your actual code
    }
}

Class2 の静的メソッド これがあなたの class2 だと想像してください。

public class Class2 {
     public static void doSomething(){
     }
}

class1 から、必要なときにいつでも Class2 の doSomething を使用できます

public class Class1 {
    public void loginAs(String username, String password)
    {
         Class2.doSomething();
         //your actual code
    }
}
于 2013-11-06T10:40:13.123 に答える
3

あなたのclass2が静的メンバーを持つこのように見える場合

public class2
{
    static int var = 1;

    public static void myMethod()
    {
      // some code

    }
}

次に、単に次のように呼び出すことができます

class2.myMethod();
class2.var = 1;

非静的メンバーにアクセスする場合は、オブジェクトをインスタンス化する必要があります。

class2 object = new class2();
object.myMethod();  // non static method
object.var = 1;     // non static variable
于 2013-11-06T10:39:32.717 に答える
2

のインスタンスを作成しClass2、目的のメソッドを呼び出すだけです。

推奨される読書: http://docs.oracle.com/javase/tutorial/java/javaOO/

于 2013-11-06T10:36:00.643 に答える
2
Class2 class2 = new Class2();

メインを呼び出す代わりに、必要なときに必要な場所で個々のメソッドを呼び出す必要があります。

于 2013-11-06T10:38:38.230 に答える
1

最初にclass1にclass2のオブジェクトを作成し、次にそのオブジェクトを使用してclass2の任意の関数を呼び出します。たとえば、これをclass1に記述します

class2 obj= new class2();
obj.thefunctioname(args);
于 2013-11-06T10:46:43.293 に答える