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