Private et protected en java

mking03 Messages postés 114 Date d'inscription   Statut Membre Dernière intervention   -  
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,
- variable private sont visible que dans la meme classe
- variable protected sont visibles ds les classe herité
- variables public sont visibls ds tt les classes
vous pouvez m'expliquer par des exemples
j'ai pa bien compris avec ces 3 phrase la
et merci d'avence

6 réponses

Marco la baraque Messages postés 996 Date d'inscription   Statut Contributeur Dernière intervention   329
 
Bonsoir,
J'ajouterai l'exemple suivant :
public class Mere {
 private int a;
 protected int b;
 public int c;
}

public class Fille {

 public void afficher() {
  System.out.println(a); /*ne marche pas car  une variable private n'est pas visible depuis une classe fille*/
  System.out.println(b); /*marche car une variable protected est visible depuis une classe fille*/
  System.out.println(c): /*fonctionne tout le temps car c est public*/
 }

}

public class Externe { //Externe est dans un autre package que Mere et Fille
 
public void afficher() {
  System.out.println(a); // ne marche pas
  System.out.println(b); // ne marche pas
  System.out.println(c): //fonctionne tout le temps car c est public
 }

}


Enfin, si tu ne spécifies pas la visibilité, l'attribut est "package friendly", c'est-à-dire qu'il va être visible par toutes les classes qui se trouvent dans le package de ta classe.

Cordialement,
53