Summaries

University notes in Markdown format from Obsidian.

Programmazione orientata agli oggetti (OOP)

download Download MD

Concetti Fondamentali

La OOP è un paradigma basato sul concetto di Oggetto, che racchiude:

  • Attributi (Dati): Caratteristiche dell'oggetto (es. cilindrata, colore).
  • Metodi (Comportamento): Azioni che l'oggetto può compiere (es. accelerare, frenare).

Classe vs Oggetto:

  • La Classe è il modello astratto (il progetto).
  • L'Oggetto è l'istanza specifica creata a partire dalla classe.

    Incapsulamento e Data Hiding

    I dati interni di un oggetto dovrebbero essere nascosti all'esterno (private) e accessibili solo tramite metodi pubblici (Getters e Setters).

Esempio Classe Prodotto:

  • File .h (Header): Contiene la definizione della classe.
    class Prodotto {
    public:
        Prodotto();
        int getId() const;
        void setId(int);
    private:
        int id;
        float prezzo;
    };
  • File .cpp (Source): Contiene l'implementazione dei metodi.
    int Prodotto::getId() const { return id; }
    void Prodotto::setId(int i) { id = i; }