Je veux appeler class2 de class1 mais class2 n'a pas de fonction principale à laquelle se référer, comme Class2.main(args);
Vous avez suposse
Classe1
public class Class1 {
//Your class code above
}
Classe2
public class Class2 {
}
et alors vous pouvez utiliser Class2 de différentes manières.
champ de classe
public class Class1{
private Class2 class2 = new Class2();
}
champ Méthode
public class Class1 {
public void loginAs(String username, String password)
{
Class2 class2 = new Class2();
class2.invokeSomeMethod();
//your actual code
}
}
Méthodes statiques de Class2 Imaginez que ce soit votre classe2.
public class Class2 {
public static void doSomething(){
}
}
de class1, vous pouvez utiliser doSomething from Class2 quand vous le souhaitez
public class Class1 {
public void loginAs(String username, String password)
{
Class2.doSomething();
//your actual code
}
}
Si votre classe 2 ressemble à ceci ayant des membres statiques
public class2
{
static int var = 1;
public static void myMethod()
{
// some code
}
}
Ensuite, vous pouvez simplement les appeler comme
class2.myMethod();
class2.var = 1;
Si vous souhaitez accéder à des membres non statiques, vous devez instancier un objet.
class2 object = new class2();
object.myMethod(); // non static method
object.var = 1; // non static variable
Créez simplement une instance de Class2
et appelez la méthode souhaitée.
Lecture suggérée: http://docs.Oracle.com/javase/tutorial/Java/javaOO/
Class2 class2 = new Class2();
Au lieu d'appeler le principal, vous devriez peut-être appeler des méthodes individuelles où et quand vous en avez besoin.
Commencez par créer un objet de class2 dans class1, puis utilisez-le pour appeler une fonction de class2, par exemple, écrivez-le dans class1.
class2 obj= new class2();
obj.thefunctioname(args);