Désolé pour répondre à des corrections à une réponse précédente, mais je n'ai pas assez réputation de modifier directement ...
- public - lecture/écriture pour tous ceux qui
- protégé - lecture/écriture pour cas toutes les classes et sous-classes intérieur même package
- int c: package-privé, lecture/écriture pour toutes les classes à l'intérieur même package
- privé - lire/écrire pour n'importe quel membre de cette classe et classes internes (le cas échéant)
Il est préférable de commander les modificateurs d'accès de cette façon, du plus large accès (public) au plus étroit (privé), sachant que lorsque vous passez de étroit à large, vous ne perdez aucune possibilité. Ceci est particulièrement important pour "protected", où il est souvent mal compris que les classes d'un même package peuvent également accéder aux membres protégés d'une classe (pas seulement ses sous-classes).
DUPE: http://stackoverflow.com/questions/215497/in-java-whats-the-difference-between-public-default-protected-and-private –