En Java, quelle est la différence entre la classe publique et la classe?


Meilleure réponse

Si une classe na pas de modificateur daccès, elle sera traitée sous le modificateur daccès par défaut.

Le modificateur daccès par défaut signifie que nous ne déclarons pas explicitement un modificateur daccès pour une classe, un champ, une méthode, etc.

Une variable ou une méthode déclarée sans aucun modificateur de contrôle daccès est disponible pour tout autre classe dans le même package. Les champs dune interface sont implicitement publics static final et les méthodes dune interface sont par défaut publiques.

Public -Une classe, méthode, constructeur, interface, etc. déclarée public peut être accédée depuis nimporte quelle autre classe . Par conséquent, les champs, méthodes, blocs déclarés dans une classe publique sont accessibles depuis nimporte quelle classe appartenant à lunivers Java.

Cependant, si la classe publique à laquelle nous essayons daccéder est dans un package différent, alors le la classe publique doit encore être importée. En raison de lhéritage de classe, toutes les méthodes et variables publiques dune classe sont héritées par ses sous-classes.

Exemple

Public static void main (string [] args)

{

// …………………………………

}

La méthode main () dune application doit être publique. Sinon, il ne pourrait pas être appelé par un interpréteur Java (tel que java) pour exécuter la classe.

Réponse

Un fichier Java ne peut avoir aucune définition de classe. lorsque nous compilons le fichier java, le compilateur génère des fichiers .class indépendants pour chaque définition de classe.

Si votre fichier java na quune seule classe principale, il nest pas nécessaire de le définir comme public.

Si votre fichier Java a plusieurs classes, vous ne pouvez pas rendre chaque classe publique car une seule classe publique est autorisée dans un fichier Java. ici, le nom de la classe publique et le nom du fichier Java doivent être identiques.

//filename: Main6.java

class Demo2

{

public void Demo2()

{

System.out.println("Hello world");

}

}

class Main6

{

public static void main(String[] args)

{

Demo2 d=new Demo2();

d.Demo2();

}

}

output

Hello world

Dans lexemple ci-dessus, je nai pas déclaré la classe principale comme publique, elle fonctionne toujours parce que jai donné le nom de la classe principale comme nom de fichier.

//filename: Main6.java

public class Demo2

{

public void Demo2()

{

System.out.println("Hello world");

}

}

class Main6

{

public static void main(String[] args)

{

Demo2 d=new Demo2();

d.Demo2();

}

}

output:

Main6.java:1: error: class Demo2 is public, should be declared in a file named Demo2.java

Maintenant, voyez, cette fois cela me donne une erreur. donc, il est recommandé de définir votre classe principale comme publique si vous avez plusieurs classes dans un même fichier java. Comme nous le savons, lexécution du programme commence par la méthode principale.

Jespère que vous avez la réponse

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *