Programmazione orientata agli oggetti
  • 1. La programmazione orientata agli oggetti (OOP) è un paradigma di programmazione basato sul concetto di "oggetti", che possono contenere dati sotto forma di campi e codice sotto forma di procedure. Gli oggetti sono istanze di classi, che definiscono la struttura e il comportamento degli oggetti. L'OOP si concentra sull'organizzazione del codice in componenti riutilizzabili e modulari, consentendo una migliore organizzazione e manutenzione del codice. L'incapsulamento, l'ereditarietà e il polimorfismo sono concetti chiave dell'OOP, che forniscono meccanismi per nascondere i dati, riutilizzare il codice e garantire la flessibilità dell'implementazione. Modellando le entità del mondo reale come oggetti, l'OOP promuove un approccio più chiaro e intuitivo allo sviluppo del software.

    Qual è il concetto principale alla base della programmazione orientata agli oggetti?
A) Eredità
B) Astrazione
C) Incapsulamento
D) Polimorfismo
  • 2. Quale parola chiave viene utilizzata per creare un oggetto in Java?
A) classe
B) questo
C) nuovo
D) var
  • 3. Che cos'è una classe nella programmazione orientata agli oggetti?
A) Una funzione in JavaScript
B) Un'istanza di un oggetto
C) Schema per la creazione di oggetti
D) Una variabile in C++
  • 4. Che cos'è il polimorfismo nella programmazione orientata agli oggetti?
A) Nascondere i dettagli dell'implementazione
B) Possibilità di trattare oggetti di classi diverse come oggetti di una superclasse comune
C) Estendere le funzionalità di una classe madre
D) Creare oggetti da classi
  • 5. Che cos'è l'incapsulamento nella programmazione orientata agli oggetti?
A) Legare insieme i dati e i metodi che operano su di essi
B) Sovrascrittura dei metodi della classe madre
C) Ereditare proprietà da una classe genitore
D) Creare istanze multiple di un oggetto
  • 6. Che cos'è un costruttore nella programmazione orientata agli oggetti?
A) Un metodo statico
B) Un metodo utilizzato per distruggere gli oggetti
C) Un metodo che restituisce un valore
D) Un metodo speciale che viene chiamato automaticamente quando viene creato un oggetto
  • 7. A cosa serve la parola chiave "super" in Java?
A) Si riferisce alla superclasse di una classe, utilizzata per richiamare i metodi della superclasse.
B) Implementazione di un'interfaccia
C) Accesso a un metodo privato
D) Dichiarare una variabile
  • 8. Che cos'è l'overloading dei metodi nella programmazione orientata agli oggetti?
A) Creare nuovi metodi in una sottoclasse
B) Avere più metodi in una classe con lo stesso nome ma con parametri diversi
C) Nascondere i dettagli di implementazione di un metodo
D) Sovrascrivere un metodo di una superclasse
  • 9. Che cos'è l'astrazione dei dati nella programmazione orientata agli oggetti?
A) Creare più oggetti da una classe
B) Accesso ai membri privati della classe
C) Sovrascrivere i metodi di una classe genitore
D) Nascondere i dettagli dell'implementazione e mostrare solo i dettagli necessari di un oggetto
  • 10. Che cos'è un modificatore di accesso pubblico nella programmazione orientata agli oggetti?
A) Consente a una classe, a un metodo o a un campo di accedere a qualsiasi altro codice dello stesso pacchetto o di un altro pacchetto.
B) Nasconde i dettagli dell'oggetto
C) Consente l'estensione della classe
D) Limita l'accesso solo all'interno della stessa classe
  • 11. A cosa serve la parola chiave "final" in Java?
A) Forza la sovrascrittura dei metodi
B) Abilita il binding dinamico dei metodi
C) Impedisce la modifica di una classe, di un metodo o di una variabile.
D) Consente l'ereditarietà multipla
  • 12. Quale principio di progettazione afferma che le classi dovrebbero essere aperte all'estensione ma chiuse alla modifica?
A) Principio di responsabilità unica
B) Principio di segregazione dell'interfaccia
C) Principio di sostituzione di Liskov
D) Principio aperto/chiuso
  • 13. Che cosa significa l'acronimo "DRY" nel contesto della programmazione orientata agli oggetti?
A) Non ripetetevi
B) Rappresentazione dei dati Anno
C) Cantiere del riuso dinamico
D) Ripetersi
  • 14. Qual è lo scopo dell'overriding dei metodi nella programmazione orientata agli oggetti?
A) Per creare nuovi metodi in una sottoclasse
B) Per avere più metodi con lo stesso nome in una classe
C) Per nascondere i dettagli di implementazione di un metodo
D) Per fornire un'implementazione specifica di un metodo già fornito dalla sua superclasse
  • 15. Quale principio di progettazione suggerisce che una classe debba avere un solo motivo per cambiare?
A) Principio di sostituzione di Liskov
B) Principio di segregazione dell'interfaccia
C) Principio aperto/chiuso
D) Principio di responsabilità unica
  • 16. Quale parola chiave viene utilizzata per ereditare una classe in Java?
A) implementazioni
B) super
C) questo
D) si estende
  • 17. Quale parola chiave viene utilizzata per riferirsi all'oggetto corrente in Java?
A) si estende
B) super
C) nuovo
D) questo
  • 18. Quale termine descrive la capacità di creare nuove classi basate su classi esistenti?
A) Eredità
B) Incapsulamento
C) Astrazione
D) Polimorfismo
  • 19. Quale caratteristica consente di utilizzare lo stesso metodo per diversi tipi di oggetti?
A) Astrazione
B) Polimorfismo
C) Eredità
D) Incapsulamento
  • 20. Quale dei seguenti elementi consente l'ereditarietà multipla in C++?
A) Interfacce
B) Polimorfismo
C) Classi astratte
D) Eredità virtuale
  • 21. Quale modificatore di accesso permette a una classe di accedere a qualsiasi altra classe?
A) Protetto
B) Pubblico
C) Predefinito
D) Privato
  • 22. Quale parola chiave viene utilizzata per impedire l'override dei metodi in Java?
A) statico
B) finale
C) astratto
D) pubblico
  • 23. Quale caratteristica consente a una classe di avere più metodi con lo stesso nome ma con parametri diversi?
A) Sovrascrittura
B) Incapsulamento
C) Sovraccarico
D) Eredità
  • 24. Quale tipo di relazione riflette una relazione "has-a" tra classi?
A) Composizione
B) Dipendenza
C) Eredità
D) Aggregazione
  • 25. Quale principio viene violato se una sottoclasse non può essere sostituita alla sua superclasse?
A) Principio di responsabilità unica
B) Principio aperto/chiuso
C) Principio di sostituzione di Liskov
D) Principio di inversione della dipendenza
  • 26. Quale termine è usato per descrivere l'atto di limitare il modo in cui le sottoclassi possono modificare una superclasse?
A) Annullamento
B) Sovrascrittura
C) Sconfinamento
D) Sovraccarico
  • 27. Un metodo che ha lo stesso nome della classe in cui è definito è noto come metodo:
A) Costruttore
B) Metodo di accesso
C) Distruttore
D) Metodo del mutatore
  • 28. Quale relazione rappresenta una situazione in cui una classe dipende da un'altra classe?
A) Aggregazione
B) Composizione
C) Eredità
D) Dipendenza
Creato con That Quiz — dove la realizzazione e l’esecuzione di test sono resi semplici per la matematica e per altre aree disciplinari.