Pages: [1] 2 3   Go Down
Print
Author Topic: II prova 26-04-10  (Read 5140 times)
0 Members e 1 Utente non registrato stanno visualizzando questa discussione.
markus182
Matricola
*
Offline Offline

Gender: Male
Posts: 28



« on: 09-02-2011, 22:39:18 »

ragazzi... per caso avete risolto questo esercizio?!?
è da un pomeriggio che mi addanno!!  testate   
il testo lo trovate qui:
http://www.megaupload.com/?d=2KXUZK3A
Logged
StephCT
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 417



« Reply #1 on: 09-02-2011, 23:41:02 »

il tuo problema qual è?
Logged

"Che la Forza sia con Te"
markus182
Matricola
*
Offline Offline

Gender: Male
Posts: 28



« Reply #2 on: 09-02-2011, 23:51:54 »

diciamo mi sono bloccato nella parte dove dice (nel costruttore della class B): ''inizializza x con i primi 10 caratteri di s...''; 
Logged
StephCT
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 417



« Reply #3 on: 09-02-2011, 23:58:19 »

x=s.substring(0,10);
Logged

"Che la Forza sia con Te"
markus182
Matricola
*
Offline Offline

Gender: Male
Posts: 28



« Reply #4 on: 10-02-2011, 00:03:21 »

ma x è privato!
Logged
StephCT
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 417



« Reply #5 on: 10-02-2011, 00:06:26 »

ah già scusami x è della superclasse. devi scrivere super(s.substring(0,10); per mandare la stringa al costruttore della classe superiore e assegnarlo così a x
Logged

"Che la Forza sia con Te"
markus182
Matricola
*
Offline Offline

Gender: Male
Posts: 28



« Reply #6 on: 10-02-2011, 00:12:59 »

perfetto Smiley
e nel metodo guess() della classe B?
sempre per la x come faccio?
Logged
StephCT
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 417



« Reply #7 on: 10-02-2011, 00:27:34 »

questa volta vai usando il metodo getX() che è creato a posta x utilizzarla ovunque
Logged

"Che la Forza sia con Te"
markus182
Matricola
*
Offline Offline

Gender: Male
Posts: 28



« Reply #8 on: 10-02-2011, 00:35:28 »

grazieeeee  ok
:S non so perchè.. ma prima col getX() non mi funzionava :O
boh.. cmq... adesso compila.. il punto 0 però non mi corrisponde xD
forse ci sarà l'errore a causa dei metodi toString.. in pratica cosa si deve fare in questi tipi di metodi quando non è specificato? cosa dovrei ritornare di preciso?
Logged
StephCT
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 417



« Reply #9 on: 10-02-2011, 07:54:55 »

il metodo toString serve solitamente a scrivere sotto forma di stringa le informazioni inerenti gli attributi delle classi. in questo caso specifico devi fare una stringa in cui metti una parentesi graffa, spazio, la x, spazio. poi nella classe C concateni la y, spazio, parentesi graffa chiusa. nella B invece concateni la z,spazio,pos,spazio,parentesi graffa chiusa.
se ho confuso y con z scambiali, xkè nn ho il programma davanti x controllare.
te ne accorgi da ciò che vuole in output col to string xkè, o te lo chiede, oppure come vedi c'è l'output in cui fa vedere come devono essere stampati...
Logged

"Che la Forza sia con Te"
markus182
Matricola
*
Offline Offline

Gender: Male
Posts: 28



« Reply #10 on: 10-02-2011, 12:43:52 »

bene.. ma nel toString() delle sottoclassi, si deve richiamare pure il toString() della superclasse?!

EDIT:
ti faccio questa domanda.. perchè sto facendo l'output del punto0.. ma mi spuntano null.. e poi la parentesi graffa aperta non spunta..  
« Last Edit: 10-02-2011, 12:54:39 by markus182 » Logged
StephCT
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 417



« Reply #11 on: 10-02-2011, 12:45:21 »

certo, devi concatenare la stringa ottenuta dal toString() della superclasse con la stringa che crei nel nuovo metodo. ricordati che una classe "figlia" prende con sè gli attributi e i metodi della "madre"...quindi gli attributi li ha pure lei e semplifichi la concatenazione richiamando il toString() superiore
Logged

"Che la Forza sia con Te"
markus182
Matricola
*
Offline Offline

Gender: Male
Posts: 28



« Reply #12 on: 10-02-2011, 12:55:34 »

quindi... essendo la ''figlia'' concateno semplicemente (per es nella classe C) con " return toString()+" "+z+" }" "
oppure devo usare il super?
scusami se ti stresso ma sto facendo tutte le prove ma non mi viene il risultato  

EDIT:
col getX() vero? 
« Last Edit: 10-02-2011, 12:57:22 by markus182 » Logged
StephCT
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 417



« Reply #13 on: 10-02-2011, 12:57:44 »

devi proprio mettere super.toString() per richiamare quello nella classe superiore
cioè return super.toString()+""+...ecc..
Logged

"Che la Forza sia con Te"
markus182
Matricola
*
Offline Offline

Gender: Male
Posts: 28



« Reply #14 on: 10-02-2011, 13:04:37 »

 pray  grazie 1000000000000000 sei stato a dir poco eccezionale.. e paziente 
ora devo vedere gli altri due punti  [Emoticon] Asd speriamo bene 
Logged
Pages: [1] 2 3   Go Up
Print
Jump to: