16

我想从class1调用class2class2没有可以引用的函数Class2.main(args);

4

5 回答 5

23

假设你有

第一类

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();

而不是调用 main,也许您应该在需要的地方和时间调用各个方法。

于 2013-11-06T10:38:38.230 回答
1

首先在 class1 中创建一个 class2 的对象,然后使用该对象调用 class2 的任何函数,例如在 class1 中编写 this

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