WorksheetsJava ad oggetti e UML
Total questions: 47
Worksheet time: 39mins
Cosa permette di fare un costruttore?
Costruire una classe
Costruire un oggetto
Costruire un programma
Costruire un metodo
Cosa NON posso fare se nella classe Student ho il seguente campo:
private int age;
Accedere al campo age di un oggetto di tipo Student nel Main
Accedere al campo age in un metodo della classe Student
Accedere al campo age nel costruttore della classe Student
Modificare il valore di age in un metodo della classe Student
Cosa posso fare se nella classe Student ho il seguente campo:
protected int age;
Accedere al campo age dall'interno di una classe figlia di Student
Accedere al campo age dall'interno di una classe padre di Student
Accedere al campo age dall'interno di una classe 'sorella' di Student (cioè che condivide con Student la stessa classe padre)
Nessuna delle altre tre risposte
Perché è meglio che i campi di un oggetto siano privati?
Che differenza c'è tra una composizione ed un'aggregazione in un diagramma UML?
Quanti costruttori devo definire esplicitamente in una classe?
Al massimo uno
Obbligatoriamente uno ed uno soltanto
Minimo uno
Posso anche non definirne nessuno
Quale delle seguenti affermazioni è vera riguardo a questo diagramma (clicca per ingrandire)?
Ogni A è associato ad un B
Ogni A è associato a più B
Ogni A è associato ad al massimo un B
Ogni A è associato ad uno o più B
Quale delle seguenti affermazioni è vera riguardo a questo diagramma (clicca per ingrandire)?
Ogni B è associato ad un A
Ogni B è associato a più A
Ogni B è associato ad al massimo un A
Ogni B è associato ad uno o più A
Quale delle seguenti affermazioni è vera riguardo a questo diagramma (clicca per ingrandire)?
Ogni A contiene da zero a più B
Ogni B contiene 3 A
Ogni A contiene 3 B
Nessuna delle altre tre risposte
Quale delle seguenti affermazioni è vera riguardo a questo diagramma (clicca per ingrandire)?
Ogni B è contenuto in un solo A
Ogni B è contenuto in più A
Un B può non essere contenuto in nessun A
Un B può esistere anche da solo
Cosa vuol dire se il tipo di ritorno di un metodo è void?
Il metodo restituisce un valore di default
Il metodo non restituisce nessun valore
Il metodo restituisce un valore vuoto
Il metodo restituisce un valore random
Nella dichiarazione del metodo seguente:
public String getLabel(int code)
Il tipo di ritorno è String
Il tipo di ritorno è int
Il tipo di ritorno è public
Il tipo di ritorno è code
Avendo questo diagramma (clicca per ingrandire) e se oggettoA è un oggetto della classe A e oggettoB è un oggetto della classe B, quale dei seguenti campi non esiste?
oggettoA.b1
oggettoA.a1
oggettoB.a1
oggettoB.b1
Se nella classe A ho la seguente proprietà:
static int FIELD = 43;
quale istruzione tra le seguenti NON posso avere nel Main?
System.out.println(A.FIELD);
A.FIELD = 44;
A a = new A();
Posso avere ognuna delle altre tre istruzioni
Quale fra le seguenti istruzioni rappresenta una corretta dichiarazione di un array?
String verifiche[];
String verifiche = new String();
verifiche[10];
String verifiche[] = new int[10];
Supponendo di aver dichiarato l'array verifiche, per far riferimento ad un suo elemento si utilizza:
verifiche
verifiche()
verifiche[i] dove i è un indice numerico
verifiche(i) dove i è un indice numerico
A che cosa serve l'operatore new?
A creare una classe
A creare un attributo
A creare un metodo
A creare un oggetto
Qual è la corretta dichiarazione per specificare cha la classe A è sottoclasse della classe B?
class A
class A extends B
class B extends A
class A extend B
Con quale strumento viene offerta la possibilità di creare nuove classi estendendo classi già esistenti?
Incapsulamento
Ereditarietà
Polimorfismo
Astrazione
Se la class Cat estende Animal, quale istruzione tra le seguenti NON è valida?
Cat x = new Cat();
Animal X = new Animal();
Cat x = new Animal();
Animal x = new Cat();
Se la classe Cat estende la classe Predator, quale delle seguenti affermazioni è vera?
Un oggetto Cat ha accesso alle proprietà ed i metodi public e protected della classe Predator
Un oggetto Predator ha accesso alle proprietà ed i metodi public e protected della classe Cat
Un oggetto Cat ha accesso alle proprietà ed i metodi public, protected e private della classe Predator
Un oggetto Predator ha accesso alle proprietà ed i metodi public, protected e private della classe Cat
Cosa una classe non eredità dalla classe padre?
Proprietà pubbliche
Proprietà private
Proprietà protected
Metodi pubblici
Qual'è l'istruzione corretta per richiamare il costruttore della classe padre dall'interno della classe figlia?
superclass();
super();
this();
extends();
Quale delle seguenti istruzioni per dichiarare un loop NON è corretta?
for ( int i = 99; i >= 0; i / 9 )
for ( int i = 7; i <= 77; i += 7 )
for ( int i = 20; i >= 2; - -i )
for ( int i = 2; i <= 20; i = 2* i )
Quale tra le seguenti indica la capacità che ha Java di selezionare una fra diverse implementazioni diverse dello stesso metodo in base al tipo reale di un oggetto (al di là del tipo della variabile in cui è contenuto)?
Polimorfismo
Incapsulamento
Astrazione
Ereditarietà
Se nella classe A ho la seguente proprietà:
static final int FIELD = 43;
quale istruzione tra le seguenti NON posso avere nel Main?
System.out.println(A.FIELD);
A.FIELD = 44;
A a = new A();
Posso avere ognuna delle altre tre istruzioni
Quando sono su un'app sul telefono
L'app è il server
L'app è il client
Io sono il client
Io sono il server
Durante un secondo della sua attività, un server
sicuramente ha risposto a molti client
è possibile che non abbia risposto a nessun client
sicuramente ha risposto ad almeno un client
è possibile che non abbia inviato richieste a molti client
Potrebbe essere utile avere una proprietà id in una classe per identificare i suoi oggetti?
Sì
Dipende
No
Solo se è public
In UML con quale simbolo indico che qualcosa ha la visibilità public?
+
-
#
:
In UML con quale simbolo indico che qualcosa ha la visibilità protected?
+
-
#
:
In UML con quale simbolo indico che qualcosa ha la visibilità private?
+
-
#
:
Sono un gestore telefonico. Ho modellato il mio mondo di interesse tramite questo diagramma UML (clicca per ingrandire). Quale affermazione tra le seguenti è vera?
Ogni utente ha almeno un numero telefonico e ad ogni numero è associato un contratto.
Ogni utente ha un numero telefonico e ad ogni numero è associato un contratto.
Ogni utente ha al massimo un numero telefonico e ad ogni numero è associato un contratto.
Ogni utente ha almeno un numero telefonico e ad ogni numero è associato almeno un contratto.
Cos'è l'overriding in Java?
Quale affermazione è errata?
Una classe può avere più classi figlie
Una classe può avere più classi padre
Una classe può avere più classi sibling (cioè figlie della stessa classe padre)
le altre tre risposte sono tutte corrette
Sto modellando il palinsesto di una rete televisiva. Ogni programma televisivo ha vari argomenti, che a loro volta sono descritti tramite delle parole chiave. Come modello un argomento?
Classe Argomento
Attributo di Attributo di ProgrammaTelevisivo
Attributo di ParolaChiave
Varie proprietà di Attributo di ProgrammaTelevisivo (una per ogni parola chiave)
Elenca due vantaggi della programmazione ad oggetti rispetto alla programmazione non ad oggetti (dove ad es. tutto il codice può essere concentrato in un unico file Main con varie funzioni).
Sono un'agenzia immobiliare. Come rappresento il legame tra la classe Appartamento e la classe Cucina?
Associazione
Aggregazione
Composizione
Padre-figlio
Sono un'agenzia immobiliare. Come rappresento il legame tra la classe Appartamento e la classe Contratto?
Associazione
Aggregazione
Composizione
Padre-figlio
Sono un'agenzia immobiliare. Come rappresento il legame tra la classe FotoAnnuncio e la classe Annuncio?
Associazione
Aggregazione
Composizione
Padre-figlio
Sono un'agenzia immobiliare. Come rappresento il legame tra la classe Immobile e Appartamento?
Associazione
Aggregazione
Composizione
Padre-figlio
L'istruzione return in un metodo
è obbligatoria
è facoltativa
è obbligatoria se il tipo di ritorno del metodo è diverso da void
è obbligatoria se il tipo di ritorno del metodo è int
Se la classe A è collegata in UML alla classe B mediante un'associazione uno-a-uno, cosa conterrà la classe A in Java?
un attributo con l'oggetto B
un attributo con l'array di oggetti B
un metodo con l'oggetto B
una classe figlio B
Se la classe A è collegata in UML alla classe B mediante un'associazione uno-a-molti, cosa conterrà la classe A in Java?
un attributo con l'oggetto B
un attributo con l'array di oggetti B
un metodo con l'oggetto B
una classe figlio B
In quale caso ho bisogno di un'associazione riflessiva (associazione di una classe con se stessa) in un diagramma delle classi UML?
Ho questo diagramma UML (clicca per ingrandire). Nel Main ho mauro (oggetto di tipo Studente) e paolo (oggetto di tipo Persona). Quale delle istruzioni seguenti NON è corretta?
String nomeStudente = mauro.getNome();
System.out.println(paolo.getNome());
String matricola = mauro.getMatricola();
System.out.println(paolo.getMatricola());
Ho questo diagramma UML (clicca per ingrandire). Devi fare overriding del metodo getNome() in Studente, riferendoti al metodo getNome() nella classe Persona (la classe padre). Quale istruzione devi scrivere nel metodo getNome() di Studente in modo che il metodo restituisca la stringa con il nome preceduta dalla stringa "Ecco il nome dello studente: " ?
