invocation de méthode dans le main
Le
franck
Bonjour,
Dans ma classe (Main) contenant la méthode main je veux faire appel à
une méthode initialisation() de la classe Main. Il faut quelle soit
static.
Toutes les méthodes de la classe Main doivent être static ?
Merci
Franck
Dans ma classe (Main) contenant la méthode main je veux faire appel à
une méthode initialisation() de la classe Main. Il faut quelle soit
static.
Toutes les méthodes de la classe Main doivent être static ?
Merci
Franck

Poser une question


obligatoirement le plus commode même si ça paraît logique. Ne
serait-ce que pour ne pas risquer de confondre avec la méthode main().
Seules doivent l'être celles que tu n'appliques PAS à une instance
d'objet : ce sont des méthodes de classe.
C'est aussi pourquoi il me semble plus commode de penser à la classe
"Main" (grrr, appelons la Objet1) comme une définition d'objet :
// pas vérifié
class Objet1 {
public static void main(String[] args) {
initialisation();
Objet1 obj = new Objet1();
obj.truc();
}
// méthode de classe
private static void initialisation {
//
}
// méthode d'instance
private void truc() {
//
}
voir un tutorial java comme celui de sun pour compléter ça.
--
oliv
Merci !
Encore une question: dans ma méthode initialisation() je voudrais créer
des objets qui soient static vus de la classe qui contient la méthode
main.
La méthode initialisation peut -elle renvoyer plusieurs objets ?
Merci
ou un Vector.
Le plus lourdingue sera alors de transférer les valeurs retournées.
qqch comme :
public class Objet1 {
// variables de classe
static String s1 = null;
static String s2 = null;
// variables d'instance
String s3 = null;
String s4 = null;
public static void main(String[] args) {
String[] res = new String[2];
res = init_classe();
s1 = res[0];
s2 = res[1];
Objet1 obj = new Objet1();
obj.init_inst();
}
// methode de classe
private static String[] init_classe() {
String[] res = new String[2];
res[0] = "s1";
res[1] = "s2";
return res;
}
// methode d'instance
private void init_inst() {
s3 = "s3";
s4 = "s4";
}
}
Toute meilleure idée est bienvenue !
Es-tu certain d'avoir absolument besoin de variables de classe qui ne
puissent pas être définies à la déclaration ?
--
oliv
public class ProgPrincipal {
private static Objet1 obj1;
private static Objet2 obj2;
public static void main(String[] args) {
Initialisation init = new Initialisation();
obj1=init.creationObjt1();
obj2 = init.creationObjt2();
}
Franck
classe Initialisation.
Dans ce cas je te laisse regarder le pattern Factory.
--
oliv