web-dev-qa-db-fra.com

Appeler une classe d'une autre classe

Je veux appeler class2 de class1 mais class2 n'a pas de fonction principale à laquelle se référer, comme Class2.main(args);

13
Sagar

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
    }
}
17
RamonBoza

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
3
Ankit Rustagi

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/

2
Juned Ahsan
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.

1
Nathan

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);
1
Upendra