Livelli di visibilità

Gli attributi, i metodi e le classi possono essere dichiarati con diversi livelli di visibilità e con altre caratteristiche.

Attributo

public Accessibile da qualsiasi altra classe
private Accessibile solo dalla classe
protected Accessibile solo dalla stessa libreria e dalle sottoclassi della stessa classe
Accessibile solo dalla stessa libreria
static Esiste una sola copia, per la classe, condivisa da tutti gli oggetti
final Diventa una costante

Metodo

public Accessibile da qualsiasi altra classe
private Accessibile solo dalla classe
protected Accessibile dai metodi della classe e delle sottoclassi
Accessibile solo dalla stessa libreria
static Viene richiamato senza creare un oggetto ma con il nome della classe
void Non produce un valore di ritorno

Il metodo main() è statico perché viene richiamato senza che esista già alcun oggetto.

Classe

public Accessibile da qualsiasi altra classe, anche fuori dalla libreria
private ?
abstract Non può essere istanziata perché incompleta, verrà completata dalle sottoclassi
final Non possono essere generate sottoclassi
Accessibile solo dalla stessa libreria

Interfaccia

  • i campi sono automaticamente public static final
  • i metodi sono automaticamente public abstract

Blocco

static Viene eseguito una sola volta