📢 Nuovo Corso Bootstrap Completo disponibile!

Classi e Oggetti in Java

La Programmazione Orientata agli Oggetti (OOP) è un paradigma di programmazione che si basa sulla modellizzazione di concetti del mondo reale in entità chiamate “oggetti”. Questi oggetti sono istanze di “classi”, che sono come dei modelli o dei blueprint per creare oggetti. In questa lezione, esploreremo il concetto di OOP, l’utilità di questo approccio e introdurremo le classi e gli oggetti.

Concetto della Programmazione Orientata agli Oggetti

L’OOP si basa su quattro concetti fondamentali:

  1. Incapsulamento: Racchiude dati (attributi) e metodi (funzioni) correlati all’interno di un’unica unità chiamata “classe”. Questo promuove l’organizzazione e l’astrazione del codice.

  2. Astrazione: Nasconde i dettagli complessi e fornisce solo le funzionalitĂ  essenziali. Puoi pensare alle classi come a modelli semplificati di oggetti reali.

  3. Ereditarietà: Permette a una classe di ereditare attributi e metodi da un’altra classe. Questo favorisce la riutilizzabilità del codice.

  4. Polimorfismo: Consente di trattare oggetti di diverse classi in modo uniforme attraverso l’uso di metodi comuni.

Vantaggi della OOP

La Programmazione Orientata agli Oggetti offre numerosi vantaggi:

  • RiutilizzabilitĂ  del Codice: Le classi possono essere riutilizzate in diversi contesti senza dover riscrivere il codice da zero.

  • Organizzazione: L’incapsulamento consente di organizzare il codice in unitĂ  logiche, facilitando la manutenzione.

  • ModularitĂ : Le classi consentono di dividere il programma in moduli indipendenti, semplificando lo sviluppo.

  • Astrazione: L’astrazione semplifica la comprensione dei concetti complessi.

Introduzione alle Classi

Una classe in Java è un modello o un blueprint per creare oggetti. Definisce gli attributi (variabili) e i metodi (funzioni) che l’oggetto condividerà. Ad esempio, considera la classe “Persona”:

public class Persona {
String nome;
int etĂ ;
void saluta() {
System.out.println("Ciao, sono " + nome + " e ho " + etĂ  + " anni.");
}
}

Attributi delle Classi

Gli attributi sono variabili interne a una classe che rappresentano le caratteristiche dell’oggetto. Nell’esempio sopra, la classe “Persona” ha attributi come “nome” e “età”.

public class Persona {
String nome; // 👈 attributo nome
int età; // 👈 attributo età
}

Metodi delle Classi

I metodi sono funzioni associate a una classe che rappresentano il comportamento dell’oggetto. Nell’esempio sopra, la classe “Persona” ha un metodo chiamato “saluta()” che stampa un messaggio di saluto.

public class Persona {
String nome;
int etĂ ;
void saluta() { // 👈 metodo saluta
System.out.println("Ciao, sono " + nome + " e ho " + etĂ  + " anni.");
}
}

Creazione e Utilizzo degli Oggetti

Gli oggetti sono istanze di classi. Puoi creare un oggetto utilizzando la sintassi seguente:

public class EsempioOOP {
public static void main(String[] args) {
Persona persona1 = new Persona();
persona1.nome = "Alice";
persona1.etĂ  = 25;
persona1.saluta(); // Output: Ciao, sono Alice e ho 25 anni.
}
}

Modifica degli Attributi e Chiamata dei Metodi

Puoi modificare gli attributi di un oggetto e chiamare i suoi metodi:

Persona persona2 = new Persona();
persona2.nome = "Bob";
persona2.etĂ  = 30;
persona2.saluta(); // Output: Ciao, sono Bob e ho 30 anni.

Conclusione

La Programmazione Orientata agli Oggetti offre un modo potente per organizzare, strutturare e modellare il codice. Le classi fungono da modelli per creare oggetti, consentendo l’incapsulamento di dati e comportamenti correlati. Comprendere i concetti di base delle classi e degli oggetti ti permetterà di costruire programmi più organizzati, leggibili e manutenibili.