Guida completa al linguaggio Java
Java è un linguaggio di programmazione creato presso la Sun Microsystems (ora incorporata in Oracle) e reso disponibile al pubblico a metà degli anni '90.
La sua sintassi semplice, la portabilità offerta dalla Java Virtual Machine e la filosofia Write Once, Run Anywhere (Scrivi una sola volta, esegui ovunque) hanno favorito un'ampia diffusione in diversi settori, tra cui lo sviluppo di applicazioni enterprise, app mobili Android e software per sistemi embedded.
Grazie alla ricca libreria standard e a una comunità attiva, Java resta uno strumento versatile e affidabile per la creazione di soluzioni scalabili e facilmente manutenibili.
In questa guida completa al linguaggio Java, vedremo i principali concetti e le caratteristiche del linguaggio, partendo dai fondamenti fino ad arrivare a concetti più avanzati.
La tabella che segue riassume le principali caratteristiche del linguaggio Java:
Caratteristica | Descrizione |
---|---|
Anno di prima versione | 1995 |
Paradigma di programmazione | Generico, Orientato agli oggetti, Funzionale, Imperativo, Riflessivo, Concorrente |
Progettato da | James Gosling |
Tipizzazione | Statica, Forte, Sicura, Nominativa, Manifesta |
Compilazione | Compilato |
Gestione della Memoria | Automatica con Garbage Collection |
Piattaforma | JVM (Java Virtual Machine) |
Estensione dei file | .java , .class , .jar |
Metodi: Concetti Avanzati
- Overloading dei Metodi
- Overloading dei Costruttori
- Passare Oggetti come Parametri
- Il meccanismo del Passaggio degli Argomenti
- Restituire Oggetti dai Metodi
- Metodi e Ricorsione
- Controllo di Accesso
- Campi e Metodi Statici
- Introduzione a
final
- Array come Oggetti
- Introduzione alle classi interne e alle classi annidate
- Introduzione agli Oggetti Stringa
- Argomenti della Riga di Comando
- Metodi Varargs
- Overloading dei Metodi con Varargs
- Inferenza automatica dei tipi e Riferimenti
Ereditarietà
Package e Interfacce
Gestione delle Eccezioni
Programmazione Multithread
Generics
- Introduzione ai Generics
- Classi Generiche con Parametri Multipli
- Generics e Tipi Limitati
- Generics e Argomenti Wildcard
- Generics e Argomenti Wildcard Limitati
- Metodi Generici
- Interfacce Generiche
- Gerarchie di Classi Generiche
- Generics e Inferenza dei Tipi
- Erasure e Metodi Bridge
- Generics e Errori di Ambiguità
- Restrizioni sui Generics
Espressioni Lambda
Moduli
Caratteristiche Avanzate del Linguaggio
Il Collections Framework
- Introduzione alle Collezioni
- L'interfaccia
Collection
- L'interfaccia
List
- L'interfaccia
Set
- L'interfaccia
Queue
- Le classi Collezione
- La classe
ArrayList
- La classe
LinkedList
- Le classi
Set
:HashSet
,LinkedHashSet
,TreeSet
eEnumSet
- Le classi
Queue
:PriorityQueue
eArrayDeque
- Accedere ad una Collezione usando gli Iteratori
- Introduzione agli
Spliterator
- Memorizzare classi definite dall'utente in una Collezione
- L'interfaccia
Map
- Le classi
Map
:HashMap
,TreeMap
,LinkedHashMap
,IdentityHashMap
eEnumMap
- I Comparatori