Usare o creare i packages per implementare modularità nei progetti e specializzare la responsabilità di gruppi di classi.

Utilizzare una classe “locale” senza un nome assegnato, una istanza creata un’unica volta attraverso una singola espressione con l’operatore new.

Cos’è una classe astratta in Java, come si dichiara e come servirsene per stabilire alcuni comportamenti da rispettare nelle classi derivate.

Esaminiamo i tre tipi di polimorfismo partendo dal fatto che un’espressione che può assumere valori diversi in base al tipo cui viene applicata.

La “Gerarchia” è molto importante in OOP e di conseguenza lo è anche l’ereditarietà. Scopriamo quindi cos’è l’ereditarietà strutturale (sub-typing) e come si definisce una gerarchia di classi in Java.

Programmare in Java significa rappresentare i problemi, semplici o complessi che siano, come interazioni tra oggetti. Impariamo a farlo anche sfruttando UML

Il paradigma di programmazione Object-oriented, dal design alla analisi e alla programmazione orientata agli oggetti. Astrazione, incapsulamento e gerarchia

Cosa sono e come si dichiarano le stringhe. Effettuare su di esse le operazioni più classiche: dall’estrazione di sottostringhe alle espressioni logiche.

Dichiarare e allocare gli array, l’inizializzazione tramite elenco di valori, gli array multidimensionali, le eccezioni e gli strumenti per manipolarli