I Compitino | II Compitino | III Compitino | Home
Esercizio 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10
Verde e la sua sottoclasse VerdeMare:
public class Verde {
protected String colore;
protected static int numero;
private int gradazione;
Verde(int gr) {
colore = “verde”;
numero++;
gradazione = gr;
}
protected int metodo_1() {
return gradazione++;
}
protected String metodo_2() {
return colore;
}
public static int metodo_3() {
return numero;
}
}
class VerdeMare extends Verde {
private int gradazione;
VerdeMare(int gr){
...
}
}
Implementare il costruttore VerdeMare(int gr). Il parametro gr
è da considerarsi un parametro numerico, compreso tra 1 e 5
ad esempio. Inoltre eseguire e valutare le seguenti istruzioni contenute nel metodo main
della classe Verde, segnalando errori se pensate che ce ne siano:
Verde matita = new Verde(3); |
|
matita.metodo_2(); |
|
matita.metodo_1(); |
|
matita.metodo_3(); |
|
matita.gradazione; |
|
VerdeMare penna = new VerdeMare(2); |
|
penna.metodo_2(); |
|
penna.metodo_1(); |
|
penna.metodo_3(); |
|
VerdeMare stilo = new VerdeMare(1); |
|
stilo.metodo_3(); |
|
penna.metodo_3(); |
|
((Verde)stilo).gradazione; |
Base, SubBase e Test:
class Base {
int n;
public Base (int i) {
n = i;
}
}
class SubBase extends Base {
}
public class Test {
public void metodo() {
Base b = new Base(5);
SubBase sb = new SubBase(10);
}
public static void main (String[] a) {
Test t = new Test();
t.metodo();
}
}
Test viene compilata correttamente?
Base e SubBase per evitare l'eventuale errore.
1, 3, 7, 15, 31, 63, ...
generati dalla funzione
f(n) rispettivamente per n = 0, 1, 2, 3, … .int f(n) che generi i valori
della sequenza.
Valutate l’espressione: ( a ) ( ( ( b ) ( ( c ) ) ( d ) ) )
Quindi valutate l'espressione: ( ( a ) ( ( b ) )
StringTokenizer del pacchetto java.util
scrivete un ciclo while per testare se ci sono ancora token e stamparli.
Inizializzate l’oggetto st di classe StringTokenizer con la stringa data
“questo è un esame”.
Dire inoltre qual’è il tipo riportato da nextToken():
risultato:1 5 + 2 * 3 1 + /
Scrivere in notazione infissa la seguente espressione aritmetica, data in notazione prefissa:
risultato:/ + 8 4 * 2 + 1 1
abstract non può essere istanziata.
abstract non può essere estesa.
abstract può essere istanziata solo se dichiarata in un'altra classe.
array_identifier = new type [length]; Costituisce una dichiarazione, la creazione di un oggetto, una inizializzazione, una creazione e inizializzazione congiunta o una dichiarazione e inizializzazione congiunta.
partenza dire l’effetto causato dall’esecuzione dei cicli
while e do-while sulla stringa arrivo.
String partenza = "i seguaci";
StringBuffer arrivo = new StringBuffer();
int i = 0;
char c = partenza.charAt(i);
while (c != 'i') {
arrivo.append(c);
c = partenza.charAt(++i);
}
e
do {
copia.append(c);
c = originale.charAt(++i);
} while (c != 'i');
arrivo alla fine del ciclo:
Ripetere l’esercizio per la stringa String partenza = "imbuto".
arrivo alla fine del ciclo:
Stack, che realizza una struttura
dati per gestire una pila:
public class Stack {
private NodoStack cima;
private static class NodoStack {
Object dato;
NodoStack pros;
}
public Stack() {
cima = null;
}
public Object pop() {
if (cima == null)
throw new PilaVuotaException();
else {
Object risultato = cima.dato;
cima = cima.pros;
return risultato;
}
public void push(Object o) {
...
}
}
void push(Object o) che inserisce un nuovo oggetto
sulla pila.
s e lo stato della memoria (stack e heap), evidenziando i vari
legami dopo le seguenti istruzioni:
Stack s = new Stack(); s.push(Integer(2)); s.pop(); s.push(Integer(5)); s.push(Integer(7));
Enumeration del package
java.util per la classe EnumarationDemo seguente:
public class EnumarationDemoimplements java.util.Enumeration {
private String[] cesto =
{"mela", "pera", "banana", "kiwi", "arancia"};
private int indice = 0;
public boolean hasMoreElements() {
...
}
public Object nextOblect(){
...
}
}
Esercizio 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10