Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
vuoi
o PayPal
tutte le volte che vuoi
LINGUAGGI DI PROGRAMMAZIONE
Vecchio Massimo
Docente:
Lezione 002
1. Con riferimento al Java, si commenti il seguente: public class Territorio {Int a;}
Con il codice public class Territorio { Int a; } abbiamo dichiarato una classe di nome
Territorio, di tipo pubblico, dichiarando una variabile a, appartenente alla classe Territorio,
di tipo Integer.
2. Con riferimento al Java, si commenti il seguente:
class Territorio {
double superficie;
int abitanti;
Territorio(double s, int a){
superficie = s;
abitanti = a;}
int densita() {
return abitanti / superficie;
}
}
La classe Territorio prevede la dichiarazione di 2 variabili(una intera abitanti ed una double
superficie).
Viene definito un costruttore per la classe e si istanzia un variabile densita a cui verrà
assegnato il valore del rapporto tra abitanti e superficie: nel fare ciò però si nota un errore
in quanto la densita non sarà un int ma dovrebbe essere un double.
3. Con riferimento al Java, si commenti il seguente: public class Territorio {}
Con il codice public class Territorio { } abbiamo dichiarato una classe di nome Territorio, di
tipo pubblico e vuota.
4. che differenza c'è tra una classe ed un oggetto?
La classe è quella cosa che definisce il comportamento generale degli oggetti che vi
appartengono.Con comportamento indichiamo le azioni (metodi) che un oggetto di quella
classe può fare, e lo stato interno (le variabili). Gli oggetti sono delle "cose" che hanno il
comportamento della classe.Ovviamente 2 oggetti distinti possono avere comportamenti
diversi in base al proprio stato interno (cioè alle variabili).
Una classe è la descrizione astratta di un tipo di dato; un oggetto è la realizzazione (istanza)
di una classe.
5. cosa è una classe?
Una classe è la descrizione astratta di un tipo di dato. Una classe è un insieme di metodi e
dati raggruppati in un'unica entità così come è nella realtà. Essa serve per descrivere un
oggetto... e a sua volta è spesso costituita da altri oggetti, ha legami con altri oggetti, o ne
eredita le caratteristiche di base.
6. cosa è un oggetto?
Un oggetto è un’aggregazione di variabili (dati) e metodi (comportamenti, cioè funzioni).
L’oggetto occupa sempre memoria che deve essere inizializzata con qualche valore. Java
garantisce che le aree di memoria associate ad un oggetto vengano inizializzate subito
dopo la creazione dell'oggetto, attraverso l'attivazione del Costruttore.
7. si faccia un esempio di creazione di un oggetto in Java usando l'operatore appropriato
Integer a = new Integer(5);
Per instanziare un oggetto si fa uso dell'istruzione new, cosicché la sintassi di dichiarazione
e inizializzazione di una variabile oggetto è la seguente:
TipoOggetto nomeVariabile = new TipoOggetto (par1, ..., parN);
Dove TipoOggetto è il tipo della variabile oggetto che stiamo creando e nomeVariabile è il
nome della variabile oggetto con cui faremo riferimento al nuovo oggetto. A destra del
simbolo di uguale "="compare l'invocazione del costruttore della classeTipoOggetto,
preceduto dall'istruzione new che indica l'operazione di instanziazione di un nuovo
oggetto
.
8. In Java quale è la signature corretta del metodo main? Motivare la risposta
Il metodo main() viene automaticamente eseguito all’attivazione del programma,
passandogli i parametri specificati a riga di comando. La signature del metodo è:
public static void main(String args[]) { …… }
Il metodo main() è preceduto dai modificatori public, static e void.
Il modificatore public rende il metodo richiamabile dal codice Java esterno alla classe.
Il modificatore static permette di richiamare un metodo di una classe senza dover prima
creare un oggetto della classe.
Il modificatore void indica che il metodo non restituisce nessun valore.
9. Con riferimento al Java, si introducano delle definizioni diverse, ma non contradditorie, di "oggetto"
Un’oggetto è un’aggregazione di variabili (dati) e metodi (comportamenti, cioè funzioni).
L’oggetto occupa sempre memoria che deve essere inizializzata con qualche valore. Java
garantisce che le aree di memoria associate ad un oggetto vengano inizializzate subito
dopo la creazione dell'oggetto, attraverso l'attivazione del Costruttore.
Un oggetto quindi ha associato dei dati nelle variabili di istanza e può eseguire delle azioni
definite nei metodi dell’istanza
10. Con riferimento al Java, si introducano delle definizioni diverse, ma non contradditorie, di "classe"
Una classe è un insieme di metodi e dati raggruppati in un'unica entità così come è nella
realtà. Essa serve per descrivere un oggetto... e a sua volta è spesso costituita da altri
oggetti, ha legami con altri oggetti, o ne eredità le caratteristiche di base
Una classe è la definizione di un tipo di oggetto.
Una classe specifica il nome e il tipo delle variabili di istanza degli oggetti, ma non specifica
il loro valore.
Una classe specifica i metodi dei suoi oggetti
11. Con riferimento al Java, cosa si intende per "metodi di interfaccia" (o "interfaccia esposta")?
I metodi (member function) sono in genere dichiarati public: essi costituiscono l'interfaccia
esposta della classe, che include tutti e solo i metodi che possono essere usati per
manipolare le istanze di quella classe.
Per usare i servizi offerti dalla classe l'unica cosa che il codice cliente deve conoscere è
l'interfaccia: di ogni metodo public deve essere nota la signature, cioè il nome del metodo,
il numero e tipo dei parametri di chiamata, il tipo del valore di ritorno. Un metodo può
essere applicato solo su istanze della classe in cui è definito (fanno eccezione i metodi
static). Tutti gli oggetti della classe condividono i suoi metodi
12. Con riferimento al Java, si introduca il concetto di "costruttore"
Un costruttore è una componente di codice che viene chiamata automaticamente quando
la classe viene istanziata, e provvede all’inizializzazione dell’oggetto.
Un costruttore è simile a un metodo, ma ne differisce per due aspetti: un costruttore non
viene mai chiamato esplicitamente, ma viene attivato dal sistema in fase di inizializzazione
dell’oggetto e non ritorna alcun valore.
13. In ambito di programmazione Object Oriented, cosa si intende con il verbo "istanzare" (un oggetto)?
Motivare la risposta
Istanziare un oggetto di una determinata classe significa allocare dinamicamente spazio di
memoria per le variabili definite in tale classe, in altre parole ciò significa creare
fisicamente le variabili.
14. In ambito di programmazione Object Oriented, cosa si intende con il termine "metodo"? Motivare la
risposta
Un metodo è una funzione definita all’interno di una classe.
Un metodo opera solo sugli oggetti istanze di tale classe.
Un metodo può avere al suo interno numerose istruzioni che potranno essere richiamate
su un oggetto della classe andando ad indicare il nome del metodo stesso.
15. In ambito di programmazione Object Oriented, cosa si intende con il termine "interfaccia"? Motivare la
risposta
Un’interfaccia è l’insieme delle dichiarazioni(o signature) dei metodi pubblici di una classe.
La signature di un metodo comprende il nome del metodo, il tipo del valore ritornato, il
numero e tipo dei parametri di chiamata, ma non il corpo del metodo (implementazione).
Una interfaccia (interface) in Java ha una struttura simile a una classe, ma può contenere
SOLO metodi d'istanza astratti e costanti (quindi non può contenere costruttori, variabili
statiche, variabili di istanza e metodi statici).
16. In ambito di programmazione Object Oriented, cosa si intende con il termine "costruttore"? Motivare
la risposta
Un costruttore è una componente di codice che viene chiamata automaticamente quando
la classe viene istanziata, e provvede all’inizializzazione dell’oggetto.
Un costruttore è simile a un metodo, ma ne differisce per due aspetti: non viene mai
chiamato esplicitamente, ma viene attivato dal sistema in fase di inizializzazione
dell’oggetto e non ritorna alcun valore.
17. In Java, di cosa necessita una classe affinchè possa diventare un programma eseguibile?
Affinchè una classe possa diventare un programma eseguibile, bisogna definire il metodo
main fatto così:
public static void main(String args[]) { … }
Il metodo main() viene automaticamente eseguito all’attivazione del programma,
passandogli i parametri specificati a riga di comando.
LEZ 003
18. Cosa riferimento al Java, si introduca il blocco "for", eventualmente aiutandosi con un diagramma di
flusso
L’istruzione for ripete l’esecuzione di un’istruzione.
La forma più utilizzata è:
for ( <init> ; <espr1> ; <aggiornamento> ) <istruzione1>
Viene prima eseguito il codice <init>, poi viene valutata <expr1>; se questa ritorna
true viene eseguita <istruzione1>, poi <aggiornamento>e si ritorna a valutare
<espr1>, ripetendo il ciclo. Quando questa assume il valore false il for termina.
<espr1>deve essere di tipo booleano; <init>può essere la dichiarazione di una
variabile locale. Ad esempio:
For ( int i = 0; i < 10; i++) System.out.print(i);
19. Da cosa è costituito un programma Java nella sua forma statica ?
E’ costituito da un insieme di definizioni di classi
Nella sua forma statica (codice sorgente), un programma Java è costituito da un insieme di
definizioni di classe in cui ogni classe espone un’interfaccia pubblica e contiene
l’implementazione dei servizi che offre.
Nella sua forma più semplice un programma è costituito da una sola classe
20. Cosa riferimento al Java, che relazione c'è tra una classe pubblica e il il nome del file che contiene la
sua definizione? Motivare la risposta
Ogni file sorgente (unità di compilazione) Java deve contenere esattamente la definizione
di una classe public. Il file sorgente deve chiamarsi come la classe public che definisce e
deve avere estensione".java".
21. Cosa riferimento al Java, quante classi classi posso definire all'interno di un singolo file? Argomentare
la risposta
In un file deve essere dichiarata una classe di tipo public (che avrà lo stesso nome del file) e
potranno essere dichiarate altre classi aggiuntive purchè non siano di tipo public.
22. Cosa riferimento al Java, si introduca il modificatore protected
Il modificatore protected può essere attribuito solo