back to top

Guida Java

Eclipse: un editor per scrivere codice Java

Per scrivere un generico programma in Java basta semplicemente aprire il blocco note di Windows, scrivere il codice e salvarlo con estensione .java. Quella citata è, a mio avviso, una buona soluzione qualora si desideri scrivere piccoli codici a scopo puramente didattico... tuttavia, è altrettanto importante prendere immediatamente familiarità con IDE di sviluppo potenti, in quanto per sviluppare applicazioni...

Caratteristiche di Java

In questo terzo capitolo della nostra guida a Java, esploreremo le caratteristiche principali che rendono questo linguaggio di programmazione così popolare e utilizzato in vari ambiti, dalla programmazione di applicazioni desktop a quella web e mobile. Comprendere queste caratteristiche è fondamentale per chiunque desideri cimentarsi nello sviluppo software con Java. Le Principali Caratteristiche di Java Sintassi - La sintassi di Java è...

Programmazione ad oggetti in Java: classi e istanze

La programmazione ad oggetti è un paradigma fondamentale nella programmazione moderna e, in particolare, in linguaggi come Java. Questo articolo fornisce un'introduzione alle principali caratteristiche della programmazione ad oggetti in Java, con un focus su classi e istanze, essenziali per comprendere come organizzare e gestire il codice in modo efficace. Cosa è la Programmazione ad Oggetti? Come abbiamo precedentemente detto, Java...

Classi ed oggetti: un esempio pratico in Java

In questo articolo esploreremo come si creano classi ed oggetti in Java attraverso un esempio pratico. Le classi e gli oggetti sono fondamentali in programmazione orientata agli oggetti (OOP), un paradigma che enfatizza la modellazione dei dati attraverso le classi. Comprendere questi concetti ci aiuterà ad affrontare in modo più efficace la programmazione in Java. Creazione della classe in Java Iniziamo...

I Metodi in Java

In questo articolo scopriremo cosa sono i metodi in Java, come dichiararli e come utilizzarli all'interno delle nostre applicazioni. I metodi sono fondamentali per riutilizzare il codice e migliorare la leggibilità, permettendo di organizzare le operazioni logiche in blocchi di codice.". Cosa Sono i Metodi? Un metodo è una funzione dichiarata all'interno di una classe che contiene un blocco di codice...

Le variabili in Java

In questo articolo, esploreremo le variabili in Java, un concetto fondamentale per chiunque si avvicini a questo linguaggio di programmazione. Una comprensione chiara delle variabili è essenziale per poter scrivere codice efficace e per gestire la memoria. Tratteremo variabili di istanza, variabili locali e parametri formali, illustrando le differenze attraverso esempi pratici. Iniziamo con definire il concetto di variabile. Una...

Tipi di dato in Java

Sospendiamo adesso la trattazione della programmazione ad oggetti introducendo nelle prossime lezioni concetti indispensabili come i tipi di dato, operatori, istruzioni condizionali e cicli. I tipi di dati si suddividono in Integrali, a Virgola mobile ed Espressivi. Tipi di dati Integrali byte = 8 bit = valori da -128 a 127 incluso short = 16 bit = da -32768 a 32767 incluso int =...

Operatori matematici e di confronto in Java

Naturalmente, per poter effettuare delle operazioni tra le variabili in Java, dobbiamo utilizzare dei caratteri "speciali" che prendono il nome di operatori. Gli operatori in Java si dividono principalmente in due categorie: operatori matematici e operatori di confronto. In questo articolo, esploreremo questi operatori, fornendo una panoramica dei più comuni e dei loro utilizzi. Operatori matematici Gli operatori matematici sono fondamentali...

Java if e switch: i costrutti condizionali

Nella lezione precedente della nostra guida abbiamo visto come è possibile utilizzare gli operatori per svolgere operazioni con le variabili. In questa lezione analizziamo nel dettaglio cosa sono e come possiamo scrivere delle istruzioni condizionali in Java. Nello specifico passeremo in rassegna i costrutti condizionali if e switch. if... else if... else Il costrutto if (se) è uno dei costrutti...

Java: operatore ternario

L'operatore ternario di Java è un costrutto condizionale che permette di semplificare il codice, riducendo la sua lunghezza e aumentando la chiarezza in contesti specifici. Produziona risultati analoghi al costrutto if ... else ..., ma richiede molto meno codice, risultando in una forma più sintetica che occupa soltanto una linea di codice. Sintassi dell'operatore ternario L'operatore ternario è prevalentemente utilizzato per...

Java: cicli for e while

In Java esistono due tipi di cicli (operazioni ripetute più di una volta): il ciclo for e il ciclo while. In questa lezione vedremo come gestire le iterazioni con Java utilizzando, appunto, i due costrutti citati. Il ciclo for Il ciclo for viene utilizzato in Java quando si vuole eseguire delle operazioni un numero determinato (già conosciuto) di volte. La sintassi...

Gli Array in Java

Come abbiamo preannunciato, è possibile avere più di un valore associato ad una variabile, come una lista di valori; questo è possibile grazie agli Array. In questo articolo vedremo, quindi, come gestire gli Array in Java. Col termine Array (anche detto vettore) viene indicato, nella programmazione, un gruppo di elementi che viene dichiarato inizialmente specificandone il numero. Un Array può...

I costruttori in Java

I costruttori in Java A questo punto della guida abbiamo dato gli strumenti essenziali al lettore per poter scrivere delle applicazioni di elementare complessità. Torniamo adesso ad occuparci della programmazione ad oggetti definendo il concetto di metodo costruttore. Un costruttore di una classe, prima di tutto, viene definito con lo stesso nome della classe e una caratteristica che lo differenzia da...

Java: astrazione e Incapsulamento

Il concetto di programmazione ad oggetti è un tema vasto e affascinante, e fino a questo momento abbiamo analizzato solo superficiali aspetti di esso. Un programmatore abituato alla programmazione procedurale potrebbe non aver ancora colto appieno i vantaggi dell'approccio orientato agli oggetti. Tra gli elementi centrali della programmazione ad oggetti, l'astrazione gioca un ruolo fondamentale: essa ci consente di...

Incapsulamento Java: un esempio pratico

In questo articolo esploreremo il concetto di incapsulamento in Java, fornendo un esempio pratico per dimostrarne l'importanza e l'applicazione. L'incapsulamento è uno dei principi fondamentali della programmazione orientata agli oggetti, che ci permette di proteggere i dati interni di una classe e di controllare come questi vengono acceduti e modificati. Cosa è l'Incapsulamento? L'incapsulamento consiste nella pratica di raggruppare dati e...

Ereditarietà in Java

In questo articolo, approfondiremo un concetto fondamentale della programmazione orientata agli oggetti in Java: l'ereditarietà. Comprendere l'ereditarietà è cruciale per scrivere codice efficace e riutilizzabile, in quanto consente di creare classi derivate che estendono le funzionalità delle classi base. Cos'è l'Ereditarietà in Java? L'ereditarietà in Java permette di riutilizzare il codice definito in una classe esistente (classe base o superclasse) in...

Polimorfismo Java: overload e override dei metodi

Il polimorfismo è un concetto fondamentale della programmazione orientata agli oggetti, spesso ritenuto uno dei più complessi da comprendere appieno. Derivando dal greco, il termine significa "avere forme diverse". Per illustrare il concetto in modo pratico, consideriamo un esempio della vita quotidiana: quando parliamo di un computer, utilizziamo lo stesso termine per indicare un computer desktop, un portatile o...

Polimorfismo e costruttori in Java

Il polimorfismo e l'uso dei costruttori in Java sono concetti fondamentali per comprendere la programmazione orientata agli oggetti. In questo articolo approfondiremo entrambe le tematiche, chiarendo il loro ruolo e la loro importanza nello sviluppo di applicazioni Java. Cosa sono i costruttori in Java? Nella lezione dedicata ai costruttori di una classe, abbiamo detto che i costruttori sono metodi speciali che...

Java: i modificatori final e static

Abbiamo fino a questo momento parlato degli aspetti principali della programmazione ad oggetti in Java. Prima di analizzare l'ultima parte di questo argomento, cioè le interfacce, è bene capire l'effetto che i modificatori final e static hanno nei vari contesti in cui sono utilizzati. Il modificatore final Il modificatore final è semplice da comprendere, poiché le implementazioni possibili sono legate alla...

Java: il modificatore abstract (e le classi astratte)

Il modificatore abstract rappresenta l'antitesi del modificatore final in Java. Il modificatore abstract può essere applicato sia a metodi che a classi, mentre non ha senso per le variabili. Vediamo come definire un metodo astratto, che richiede una sintassi specifica: si omettono le parentesi graffe. Un esempio di definizione di un metodo astratto è il seguente: public abstract tipoDiRitorno nomeMetodo(); Come...

Le interfacce in Java

Andiamo adesso ad analizzare l'ultimo dei concetti relativi alla programmazione ad oggetti, ovvero le interfacce. Cosa sono le interfacce in Java? Molto spesso, le interfacce vengono confuse con le classi astratte, dato che dal punto di vista logico sono molto simili. Tuttavia, le interfacce possono essere intese come un'evoluzione delle classi astratte e permettono, di fatto, di simulare l'ereditarietà multipla. Vantaggi delle...

Gestione delle eccezioni in Java

Abbiamo finito la nostra carrellata sulla programmazione ad oggetti e abbiamo visto, tramite del codice di esempio, alcune implementazioni in Java. A questo punto della guida, il lettore ha tutte le basi per poter strutturare applicazioni, anche di grosse dimensioni, con un approccio ingegneristico. Chiaramente, forniti i mezzi, il lettore dovrà fare esperienza pratica per poter padroneggiare al meglio...

Gestire le eccezioni in Java: il blocco try-catch

La gestione delle eccezioni è un aspetto fondamentale della programmazione in Java. Utilizzando il costrutto try-catch, gli sviluppatori possono controllare gli errori in modo efficace, consentendo alle applicazioni di continuare a funzionare anche quando si verificano situazioni impreviste. Il Costrutto Try-Catch Entriamo subito nel vivo della trattazione per quanto riguarda il costrutto try e catch. Nel blocco try deve essere inserito...

Thread e multi-threading in Java

In questa parte della guida affrontiamo come gestire i thread in Java e, conseguentemente, come sviluppare applicazioni definite multithreading. Per prima cosa diamo una definizione di thread. In maniera abbastanza approssimativa si può dire che in Java viene creato un thread ogni qual volta mandiamo in esecuzione una classe con il metodo main() all'interno. Dunque, il thread conterrà tutto il...

Uso dei Thread in Java

In questo articolo, esploreremo in dettaglio come utilizzare i Thread in Java, una caratteristica fondamentale per gestire esecuzioni concorrenti. Vedremo due approcci principali per creare un thread e comprenderemo le situazioni in cui ognuno di questi metodi è vantaggioso. Creazione di un Thread come sottoclasse della classe Thread Per creare un thread come sottoclasse della classe Thread, dobbiamo estendere la classe...

Java: gestione di più thread contemporaneamente

Se sei interessato a comprendere come la Java Virtual Machine (JVM) gestisca più thread in esecuzione contemporaneamente, questo articolo ti guiderà attraverso un esempio pratico. Modificheremo la classe EsempioThread per vedere il risultato dell'output a schermo relativo alla gestione dei thread. Esempio di Classi Thread in Java Iniziamo definendo la classe EsempioThread come illustrato nel seguente codice: public class EsempioThread implements Runnable...

Java: i pacchetti indispensabili

Java: i pacchetti indispensabili Indispensabili per lo sviluppatore sono le API J2SE, raggiungibili all'indirizzo: http://java.sun.com/j2se/1.5.0/docs/api/. Tutti i pacchetti aggiornati alla versione 1.5 sono dettagliatamente descritti con sintassi ed esempi di utilizzo, fornendo una risorsa fondamentale per il lavoro quotidiano nel linguaggio di programmazione Java. Aprendo il sito delle API, il browser si dividerà in tre pannelli essenziali per la navigazione: In alto...

Gestire le connessioni ai database con JDBC

La tecnologia Java ha ottenuto molto successo grazie all'accesso al database tramite JDBC, concorrente dell'ormai noto ODBC. Nell'ottica multipiattaforma, le connessioni JDBC sono studiate per poter collegarsi a qualsiasi motore di database, indipendentemente dalla sua tipologia o dalla piattaforma di utilizzo. La rivoluzione sta nel fatto che nessuna riga di codice deve essere modificata nel caso si cambi il DBMS...

Le applet

Le Applet in Java Oltre a sviluppare potenti applicazioni, con Java è possibile realizzare semplici o complesse Applet. Queste ultime possono essere facilmente inserite nelle proprie pagine web grazie ad un TAG HTML specifico fornito dal W3C, ovvero: <applet>. Cosa sono le Applet? Le Applet sono piccoli riquadri, integrati all'interno di una pagina web, sviluppati in Java utilizzando le famose tecniche grafiche...

Un esempio di applet: inviare una mail

Per poter inviare una email grazie all'interfaccia grafica disponibile con le Applet bisogna utilizzare il Package java.net che include la possibilità di dialogare con un Socket in internet, più precisamente aprire il Socket sulla porta 25 (di default) che si preoccupa di inviare i mesasggi di posta elettronica, la porta 25 o meglio il protocollo SMTP deve ricevere comandi...