.dsy:it.
Show 150 posts per page

.dsy:it. (http://www.dsy.it/forum/)
- Fondamenti di architettura e programmazione (http://www.dsy.it/forum/forumdisplay.php?forumid=234)
-- [Java] Maledette Eccezioni... (http://www.dsy.it/forum/showthread.php?threadid=23889)


Posted by vampiro85 on 02-02-2006 09:47:

Maledette Eccezzioni...

ciao a tutti...
qualcuno sarebbe cosi gentile da spiegarmi perchè il main dato da malchiodi mi dà ste errore???

<<C:\Programmi\Java\jdk1.5.0_03\bin\Programma.java:51: <<unreported exception InvalidVariableException; must be <<caught or declared to be thrown
<< s3.esegui();
<< ^

è sicuramente un problema del mio programma(non di quello di malchiodi) xò non so + che fare!!! sono in crisi fex...

QUALKUNO MI AIUTI PER FAVORE!!!


Posted by ARIEL on 02-02-2006 10:28:

Prova a vedere se hai lanciato tutte le eccezioni compresa InvalidVariableException nei metodi esegui delle varie classi!


Posted by vampiro85 on 02-02-2006 10:44:

si... cioè... penso di aver fatto giusto x' non da errori nel mio programma... non so + che dire... se vuoi guadarlo ti passo il sorgente...


Posted by ARIEL on 02-02-2006 10:46:

mandami un pm....


Posted by sandrino83 on 02-02-2006 15:01:

ariel ma tu come la gestisci la executeException? Nel senso...nel programma.java è nel catch in fondo ma nelle classi estese ci sono le altre.....

__________________
we are just two lost souls swimming in a fish bowl year after year....running over the same old ground....what have we found.......


Posted by Vikyg13 on 02-02-2006 16:55:

Io invece quando faccio partire il main mi dice che non riesce a trovare la classe ExecutionException riferendosi alla riga "catch(ExecutionException e)" del main

Come mai secondo voi??


Posted by sandrino83 on 02-02-2006 17:18:

vikyg13.....idem succede a me

__________________
we are just two lost souls swimming in a fish bowl year after year....running over the same old ground....what have we found.......


Posted by Joda on 02-02-2006 17:34:

dovete importare il package corretto, sempre che non sia un' eccezione di sistema.

__________________
Homepage personale (English version)
c/o segreteria didattica via comelico


Posted by sandrino83 on 02-02-2006 17:53:

in ke senso....quale package.......non è un'eccezione di sistema.....penso

__________________
we are just two lost souls swimming in a fish bowl year after year....running over the same old ground....what have we found.......


Posted by sandrino83 on 02-02-2006 17:54:

in ke senso....quale package.......non è un'eccezione di sistema.....penso........se modifico programma.java e in fondo nel catch sostituisco executionexception con exception funziona tutto a meraviglia...........

__________________
we are just two lost souls swimming in a fish bowl year after year....running over the same old ground....what have we found.......


Posted by Vikyg13 on 02-02-2006 17:56:

Si vero, funziona anche a me se faccio quello che dice sandrino!Non so se mi funziona correttamente però il prgramma parte


Posted by Joda on 02-02-2006 18:01:

Originally posted by Vikyg13
Si vero, funziona anche a me se faccio quello che dice sandrino!Non so se mi funziona correttamente però il prgramma parte


dunque il package che Java carica di default è java.lang, infatti le classi String, Integer, etc fanno parte di questo package, mentre le altre bisogna eseguire l'import dei package idonei

l'eccezione incriminata è un'eccezione del package java.lang ? se si la deve vedere se no bisogna fare l'import della package idoneo.

import ????

attenta se è richiesto di catchare quella eccezione vuol dire che nel codice ci deve essere un catch(eccezione).

__________________
Homepage personale (English version)
c/o segreteria didattica via comelico


Posted by Vikyg13 on 02-02-2006 18:03:

Si ho capito cosa vuoi dire, ma l'import l'ho controllato, è corretto!!


Posted by Vikyg13 on 02-02-2006 18:04:

Ho risolto, sandrino,t sto mandando un pm


Posted by Joda on 02-02-2006 18:05:

Originally posted by Vikyg13
Si ho capito cosa vuoi dire, ma l'import l'ho controllato, è corretto!!


allora o non viene importata il package o non viene mai lanciata quel tipo di eccezione.

__________________
Homepage personale (English version)
c/o segreteria didattica via comelico


Posted by sandrino83 on 02-02-2006 18:08:

in quale classe va importato?

__________________
we are just two lost souls swimming in a fish bowl year after year....running over the same old ground....what have we found.......


Posted by Vikyg13 on 02-02-2006 18:16:

Ho risolto, sbagliavo io nell'importazione!


Posted by spenk.85 on 03-02-2006 22:07:

scusa, ma executionexception è la "superclasse" delle altre eccezioni che può lanciare il prog?


Posted by sandrino83 on 04-02-2006 09:49:

esattamente......infatti se ci fai caso executionexception è un errore generico che non viene mai lanciato in modo specifico nel codice mentre le altre eccezzioni sonosottoclassi della stessa..............

__________________
we are just two lost souls swimming in a fish bowl year after year....running over the same old ground....what have we found.......


Posted by spenk.85 on 04-02-2006 10:56:

bella! almeno le eccezione sono giuste,,,ora parte l'operazione clone!


Posted by Crashman on 05-02-2006 16:46:

Voi come le avete fatte, controllate o non controllate?

__________________
"Overcome the devils with a thing called love"
Msn: crashman86@hotmail.com
Futuro programmatore grafico :)


Posted by spenk.85 on 05-02-2006 18:42:

non controllate, non è richiesto nessuno controllo se non sbaglio


Posted by Skioda86 on 06-02-2006 10:42:

Ragazzi, sapete cosa sia questo errore??? Non l'avevo mai visto prima:

Exception in thread "main" java.lang.NumberFormatException: For input string: "arg1"

at java.lang.NumberFormatException.forInputString<Unknown Source>
at java.lang.Integer.parseInt<Unknown source>
at java.lang.Integer.parseInt<Unknown source>
at Selezione.esegui<Selezione.java:38>
at Sequenza.esegui<Sequenza.java: 13>
at Programma.main<Programma.java: 50>

- Dove alla riga 38 della Selezione ho:
if(Integer.parseInt(variabile) <= valore)

- Dove alla riga 13 di Sequenza ho:
elenco[i].esegui();

-Dove alla riga 50 del programma ho:
s3.esegui();

Premetto che in dos scrivo ....> java Programma 1 2



Ho modificato stamane la classe Sequenza in cui, non avendo capito cosa deve fare il metodo esegui di questa classe, ho provato a scrivere:

for(int i=0;i<elenco.length;i++)
elenco[i].esegui();


e dopodichè ho "aggiustato" qua e la le altre classi come mi pareva di ritenere giusto, ma da quel momento è cominciato ad uscire questo errore!!! HELP

__________________
- - {[( KEVIN HIGHT FLY)]} - -


Posted by Joda on 06-02-2006 10:47:

Originally posted by Skioda86
Ragazzi, sapete cosa sia questo errore??? Non l'avevo mai visto prima:

Exception in thread "main" java.lang.NumberFormatException: For input string: "arg1"

at java.lang.NumberFormatException.forInputString<Unknown Source>
at java.lang.Integer.parseInt<Unknown source>
at java.lang.Integer.parseInt<Unknown source>
at Selezione.esegui<Selezione.java:38>
at Sequenza.esegui<Sequenza.java: 13>
at Programma.main<Programma.java: 50>

- Dove alla riga 38 della Selezione ho:
if(Integer.parseInt(variabile) <= valore)

- Dove alla riga 13 di Sequenza ho:
elenco[i].esegui();

-Dove alla riga 50 del programma ho:
s3.esegui();

Premetto che in dos scrivo ....> java Programma 1 2



Ho modificato stamane la classe Sequenza in cui, non avendo capito cosa deve fare il metodo esegui di questa classe, ho provato a scrivere:

for(int i=0;i<elenco.length;i++)
elenco[i].esegui();


e dopodichè ho "aggiustato" qua e la le altre classi come mi pareva di ritenere giusto, ma da quel momento è cominciato ad uscire questo errore!!! HELP


Così sembra che non riesca a convertire il valore passato a parseInt, comunque c'e' sempre il vecchio metodo della nonna lo step-by-step per trovare gli errori :)

__________________
Homepage personale (English version)
c/o segreteria didattica via comelico


Posted by Skioda86 on 06-02-2006 11:04:

Originally posted by Joda

Così sembra che non riesca a convertire il valore passato a parseInt, comunque c'e' sempre il vecchio metodo della nonna lo step-by-step per trovare gli errori


Esatto!! Sembra che richiamado nell'esegui del metodo Sequenza (in cui faccio eseguire tutte le istruzioni all'interno dell'array elenco) in questo modo elenco[i].esegui() non riesca più a trasformare in numero la stringa che dovrei avergli dato in input, ma no stroverà neanche la stringa perchè gia utilizzata in precedenza....NO??!!!

Cmq è tutta mattina che provo. Se tolgo elenco[i].esegui() funziona tutto alla perfezione (O QUASI....DICIAMO PERFEZIONE FIN DOVE SONO RIUSCITO AD ARRIVARE)...Se invece lo lascio...nn va più niente....ed esce quel bel errore di prima....ke palle!!!

__________________
- - {[( KEVIN HIGHT FLY)]} - -


Posted by Joda on 06-02-2006 11:19:

Originally posted by Skioda86
Esatto!! Sembra che richiamado nell'esegui del metodo Sequenza (in cui faccio eseguire tutte le istruzioni all'interno dell'array elenco) in questo modo elenco[i].esegui() non riesca più a trasformare in numero la stringa che dovrei avergli dato in input, ma no stroverà neanche la stringa perchè gia utilizzata in precedenza....NO??!!!

Cmq è tutta mattina che provo. Se tolgo elenco[i].esegui() funziona tutto alla perfezione (O QUASI....DICIAMO PERFEZIONE FIN DOVE SONO RIUSCITO AD ARRIVARE)...Se invece lo lascio...nn va più niente....ed esce quel bel errore di prima....ke palle!!!


usi un editor tipo eclipse ? se si puoi fare il debug passo passo ... in modo da capire esattamente quale sia la riga.

togliendo esegui va tutto (+ o -) allora può darsi che sia esegui strutturata male.

Però ripeto senga un debug step by step ci capisci poco e nulla ( a mano penso sia da suicidio).

__________________
Homepage personale (English version)
c/o segreteria didattica via comelico


Posted by sbrandu on 07-02-2006 14:37:

Ma scusate il proble non è forse che il metodo parse int applicato a una stringa funziona solo se la stringa contiene un valore(sotto forma di stringa tipo variabile="1").. in questo caso variabile contiene dei caratteri che formano la stringa tipo variabile="arg1", quindi il metodo parseInt non può (credo) convertire la scritta in un valore intero.
Forse dovresti riferirti al valore contenuto in variabile richiamandolo dall'hashtable tipo hashtable.get(variabile) <- questa istruzione fa riferimento al valore della variabile variabile in hastable che credo sia ciò chhe ti serve..


Posted by Joda on 07-02-2006 14:40:

Originally posted by sbrandu
Ma scusate il proble non è forse che il metodo parse int applicato a una stringa funziona solo se la stringa contiene un valore(sotto forma di stringa tipo variabile="1").. in questo caso variabile contiene dei caratteri che formano la stringa tipo variabile="arg1", quindi il metodo parseInt non può (credo) convertire la scritta in un valore intero.
Forse dovresti riferirti al valore contenuto in variabile richiamandolo dall'hashtable tipo hashtable.get(variabile) <- questa istruzione fa riferimento al valore della variabile variabile in hastable che credo sia ciò chhe ti serve..


certamente se a parseInt passi una stringa di caratteri, non converte nulla e viene generata un'eccezione.

__________________
Homepage personale (English version)
c/o segreteria didattica via comelico


Posted by sbrandu on 07-02-2006 14:47:

Beh allora skioda86 non ti resta che correggere..:D


Posted by Skioda86 on 07-02-2006 18:49:

sbrandu

Ma scusate il proble non è forse che il metodo parse int applicato a una stringa funziona solo se la stringa contiene un valore(sotto forma di stringa tipo variabile="1").. in questo caso variabile contiene dei caratteri che formano la stringa tipo variabile="arg1", quindi il metodo parseInt non può (credo) convertire la scritta in un valore intero.
Forse dovresti riferirti al valore contenuto in variabile richiamandolo dall'hashtable tipo hashtable.get(variabile) <- questa istruzione fa riferimento al valore della variabile variabile in hastable che credo sia ciò chhe ti serve..

Joda

Certamente se a parseInt passi una stringa di caratteri, non converte nulla e viene generata un'eccezione.


sbrandu

Beh allora skioda86 non ti resta che correggere..:D


Grazie ragazzi....Sì è vero, sono 1 PIRLA!!!:wall:
Ma sapete...stando davanti al PC ore ed ore :pc:per poi vederti sparare fuori ste cagate, anche gli errori più semplici NON SI RIESCONO PIU' A SCOVARE!!!!

Cmq ora il mio dilemma è un altro...è un'altra piccola eccezione che mi esce....ma sinceramente non l'ho mai vista. Appena trovo il modo di sviarla la posto con la relativa soluzione...!!!
Intanto non ci resta che SOFFRIRE...!!!!

Pensate che ora ho appena provato il programma dopo delle modifiche alla hashtable e INDOVINATE 1 PO'!!!???

Mi dice che c'è un errore in questo SEMPLICISSIMO
if (decremento < 0){
decremento= ((int)memoria.get(variabile)) - decremento;
memoria.remove(variabile);
memoria.put(variabile,((Integer) decremento);}

C'è proprio da impazzire!!! Mi stà a tirà per il :sedere:!!!

Boh ads...vado a sistemare un pò!! Un'altra cosa...
qualcuno è capace di usare
Map.Entry ???? POSTATE...POSTATE!!!

BYEEEEEEEEEEEEEEEEEEEE E BUON LAVORO A TUTTI!!!

__________________
- - {[( KEVIN HIGHT FLY)]} - -


Posted by Crashman on 07-02-2006 19:46:

code:
{ decremento= ((int)memoria.get(variabile)) - decremento; memoria.remove(variabile); memoria.put(variabile,((Integer) decremento);}

Tutto questo si poteva fare in un unica istruzione :)

__________________
"Overcome the devils with a thing called love"
Msn: crashman86@hotmail.com
Futuro programmatore grafico :)


Posted by Skioda86 on 07-02-2006 20:54:

Crashman

code: {
decremento= ((int)memoria.get(variabile)) - decremento;
memoria.remove(variabile);
memoria.put(variabile,((Integer) decremento);}


Tutto questo si poteva fare in un unica istruzione :)


Posso sapere quale??? Usando il set...qualcosa che ora non ricordo??? :D THANKS....






W OPEN SOURCE!!!!

__________________
- - {[( KEVIN HIGHT FLY)]} - -


Posted by Skioda86 on 08-02-2006 09:57:


Crashman

code: {
decremento= ((int)memoria.get(variabile)) - decremento;
memoria.remove(variabile);
memoria.put(variabile,((Integer) decremento);}


Tutto questo si poteva fare in un unica istruzione :)



L'istruzione a cui ti riferivi era forse:

memoria.put(variabile,(memoria.get(variabile) - ((Integer)decremento));

:D :D :D ::pc:
Ma sai...preferisco agire di mano mia sulla hashtable...almeno "sò" cosa stò facendo....O ALMENO SI SPERA
:):):)


W OPEN SOURCE

__________________
- - {[( KEVIN HIGHT FLY)]} - -


Posted by Drowne on 08-02-2006 19:44:

C'è bisogno di fare il remove prima di fare un put o è solo una precauzione?


Posted by Joda on 08-02-2006 19:46:

Originally posted by Drowne
C'è bisogno di fare il remove prima di fare un put o è solo una precauzione?


dipende dal contesto, puoi fare anke un set (sempre se si può ora non ricordo) ?

__________________
Homepage personale (English version)
c/o segreteria didattica via comelico


Posted by Drowne on 08-02-2006 20:25:

come si usa il set, scusami?

se faccio memoria.set(variabile,valore); da errore in compilazione...


Posted by Joda on 08-02-2006 20:45:

Originally posted by Drowne
come si usa il set, scusami?

se faccio memoria.set(variabile,valore); da errore in compilazione...


puodarsi che non sia un metodo supportato, ora non mi ricordo... controlla nella doc della hashtable.

__________________
Homepage personale (English version)
c/o segreteria didattica via comelico


Posted by sbrandu on 08-02-2006 20:47:

Nessuno è riuscito a sbrogliare il problema dell'indentazione?


Posted by sbrandu on 08-02-2006 20:48:

Nessuno è riuscito a sbrogliare il problema dell'indentazione?
Io ci sto provando cercando di utilizzare come aveva detto qualcuno il metoto istanceof, ma è come se java non lo riconoscesse..


Posted by Crashman on 08-02-2006 20:55:

Originally posted by sbrandu
Nessuno è riuscito a sbrogliare il problema dell'indentazione?
Io ci sto provando cercando di utilizzare come aveva detto qualcuno il metoto istanceof, ma è come se java non lo riconoscesse..

Non serve istanceof...
la soluzione a questo problema è decisamente più facile di quello che pensate ;)

__________________
"Overcome the devils with a thing called love"
Msn: crashman86@hotmail.com
Futuro programmatore grafico :)


Posted by Drowne on 08-02-2006 20:59:

ok, nulla avevo scritto una stronzata ^_^


edit :D


Posted by Crashman on 08-02-2006 21:08:

Originally posted by Drowne
qualcuno mi sa dire se questa identazione va bene?


No l'identazione corretta è questa:
code:
crashman@linux> java Programma 3 4 DECLARE s; DECLARE arg1; arg1 = 3; IF (arg1<=0) PRINT "Primo argomento invalido"; ELSE DECLARE arg2; arg2 = 4; IF (arg2<=0) PRINT "Secondo argomento invalido"; ELSE WHILE (arg1!=0) arg1 -= 1; s += 1; WHILE (arg2!=0) arg2 -= 1; s += 1; PRINT s; 7

;)

__________________
"Overcome the devils with a thing called love"
Msn: crashman86@hotmail.com
Futuro programmatore grafico :)


Posted by sbrandu on 09-02-2006 10:46:

Un aiutino Crashman tu che ce l'hai fatta per l'indentazione?


All times are GMT. The time now is 14:07.
Show all 43 posts from this thread on one page

Powered by: vBulletin Version 2.3.1
Copyright © Jelsoft Enterprises Limited 2000 - 2002.