Maison  >  Article  >  Java  >  Disposition détaillée de la méthode principale en Java

Disposition détaillée de la méthode principale en Java

黄舟
黄舟original
2017-09-08 10:01:102260parcourir

Cet article présente principalement les informations détaillées et connexes sur les questions d'entretien de la méthode principale Java. Nous présentons ici les méthodes de 10 questions d'entretien classiques. Les amis dans le besoin peuvent se référer à

Méthode principale Java Compilation détaillée. de questions d'entretien

1. Comment définir une classe sans utiliser la méthode principale ?

Non, nous ne pouvons pas exécuter de classes Java sans méthode principale.

Avant Java 7, vous pouviez exécuter des classes Java en utilisant l'initialisation statique. Cependant, à partir de Java 7, cela ne fonctionne pas.

2. Le paramètre requis par la méthode main() n'est pas un tableau de chaînes ?

Non, le paramètre de la méthode main() doit être un tableau de chaînes.

Cependant, lors de l'introduction de paramètres variables, vous pouvez transmettre des paramètres variables de type chaîne en tant que paramètres à la méthode main(). Les paramètres de variable doivent être des tableaux.


package com.instanceofjava;
public class MainMethod
{
public static void main(String args[])
{
}
}

3. Pouvons-nous changer le type de retour de la méthode main() ?

Non, le type de retour de la méthode main() ne peut être que vide. Tout autre type est inacceptable.


package com.instanceofjava;
public class A
{
public static int main(String[] args)
{
 return 1;  //run time error : No main method found
}
}

4. Pourquoi la méthode main() doit-elle être statique ? La méthode

main() doit être statique.

Si main() peut être non statique, alors la JVM doit instancier sa classe lorsque la méthode main est appelée.

Lors de l'instanciation, le constructeur de la classe doit être appelé. Si le constructeur de cette classe a des paramètres, une ambiguïté surviendra.

Par exemple, dans le programme suivant, quels paramètres la JVM transmet-elle lors de l'instanciation de la classe « A » ?


package com.instanceofjava;
public class A
{
public MainMethod(int i)
{
//Constructor taking one argument
}
 public void main(String[] args)
{
//main method as non-static
}

5. Pouvons-nous déclarer la méthode main() comme non statique ?

Non, la méthode main() doit être déclarée statique pour que la JVM puisse appeler la méthode main() sans instancier sa classe.

Si vous supprimez l'instruction "static" de la méthode main(), même si la compilation peut toujours réussir, cela entraînera l'échec du programme au moment de l'exécution.


package com.instanceofjava;
public class A
{
public void main(String[] args)
{
System.out.println("indhu");     //Run time error
}
}

6. Pouvons-nous surcharger la méthode main() ?

Oui, nous pouvons surcharger la méthode main(). Une classe Java peut avoir un nombre illimité de méthodes main().

Pour exécuter une classe Java, la méthode main() de la classe doit avoir une déclaration telle que "public static void main(String[] args)". Si vous apportez des modifications à cette déclaration, la compilation réussira. Toutefois, le programme Java ne peut pas être exécuté. Vous obtiendrez une erreur d’exécution car la méthode principale est introuvable.


package com.instanceofjava;
public class A
{
public static void main(String[] args)
{
System.out.println("Indhu");
 }
void main(int args)
{
System.out.println("Sindhu");
}
long main(int i, long d)
{
System.out.println("Saidesh");
return d;
}
}

7. Pouvons-nous déclarer la méthode main() comme privée ou protégée, ou sans modificateurs d'accès ?

Non, la méthode main() doit être publique. Vous ne pouvez pas définir la méthode main() comme privée et protégée, ni utiliser de modificateurs d'accès.

Cela permet à la JVM d'accéder à la méthode main(). Si vous ne définissez pas la méthode main() comme publique, même si la compilation réussit, vous obtiendrez une erreur d'exécution car la méthode main est introuvable.


package com.instanceofjava;
public class A
{
private static void main(String[] args)
{
//Run time error
}
}

8. Pouvons-nous remplacer la méthode main en Java ?

Non, vous ne pouvez pas remplacer la méthode main en Java. En effet, la méthode principale est une méthode statique et, en Java, les méthodes statiques sont combinées au moment de la compilation, vous ne pouvez donc pas remplacer les méthodes statiques en Java.

9. Pouvons-nous terminer la méthode principale en Java ?

Vous pouvez finaliser la méthode main en Java. La JVM n'a aucun problème avec cela.

10. Pouvons-nous synchroniser la méthode principale en Java ?

Oui, la méthode principale peut être synchronisée en Java. Le modificateur synchronisé peut être utilisé dans la déclaration de la méthode principale, afin que la méthode principale puisse être synchronisée en Java.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn