Homepage  Il progetto dsy.it è l'unofficial support site dei corsi di laurea del Dipartimento di Scienze dell'Informazione e del Dipartimento di Informatica e Comunicazione della Statale di Milano. E' un servizio degli studenti per gli studenti, curato in modo no-profit da un gruppo di essi. I nostri servizi comprendono aree di discussione per ogni Corso di Laurea, un'area download per lo scambio file, una raccolta di link e un motore di ricerca, il supporto agli studenti lavoratori, il forum hosting per Professori e studenti, i blog, e molto altro...
In questa sezione è indicizzato in textonly il contenuto del nostro forum


.dsy:it. .dsy:it. Archive > Didattica > Corsi A - F > Fondamenti di architettura e programmazione
 
[JAVA][HELP] Eccezioni
Clicca QUI per vedere il messaggio nel forum
K)M4STER
Mi servirebbe un aiuto per risolvere il seguente problema,
amettiamo che un metodo o un costruttore di una certa classe se si verifica una determinata condizione lanci l'eccezione Exception1. Quello che mi servirebbe è vedere, in un altro metodo (o in un costruttore), se Excpetion1 è stata effettivamente lanciata...

Faccio un esempio per chiarire:

class Prova throws Exception1
{ Exception1 e1 = new Exception1();

public void Prova(int x)
{
int v=x;
try
{if(v==0) throw e1;
}
catch(Exception1 err)
{}
}
}

in un altra classe esiste un metodo che esegue

int z= In.readInt();
aaa.Prova(z);

Vorrei vedere da quì se è stata lanciata l'eccezione in Prova. Sottolineo che vorrei vederlo da quì!!!!

dayfallen
Originally posted by K)M4STER
Mi servirebbe un aiuto per risolvere il seguente problema,
amettiamo che un metodo o un costruttore di una certa classe se si verifica una determinata condizione lanci l'eccezione Exception1. Quello che mi servirebbe è vedere, in un altro metodo (o in un costruttore), se Excpetion1 è stata effettivamente lanciata...

Faccio un esempio per chiarire:

class Prova throws Exception1
{ Exception1 e1 = new Exception1();

public void Prova(int x)
{
int v=x;
try
{if(v==0) throw e1;
}
catch(Exception1 err)
{}
}
}

in un altra classe esiste un metodo che esegue

int z= In.readInt();
aaa.Prova(z);

Vorrei vedere da quì se è stata lanciata l'eccezione in Prova. Sottolineo che vorrei vederlo da quì!!!!

Non ti basta un try ?:?

K)M4STER
eh no, perchè il catch di Prova vede l'eccezione... Se facessi un try anche sotto non trova nessuna eccezione!

nous
public bool Prova(int x)
{
int v=x;
try
{
if(v==0) throw e1;
}
catch(Exception1 err)
{
return false;
}
return true
}

E poi :

if !aaa.Prova(z) {Ho l'eccezione}
else {non ho l'eccezione}


P.s. il tuo metodo di esempio era chiamato come il costruttore della classe per errore (e quindi devi cambiare il nome del metodo, ma il mio sistema funziona) o perchè è un costruttore (e quindi devi togliere il valore di ritorno, e il mio metodo non funziona)?

ToBlEr:OnE
Ragazzi ho una cosa da chiedervi riguardo le eccezioni, in particolare NoMoreCard e InvalidCard.
Se devo essere sincero io non so cosa inserire nel corpo della classe eccezione. Non posso mettere un semplice return del tipo "Carta non valida!" e poi lo richiamo nei costruttori carta, mazzo, mano eccetera?
Tipo se inserisco una carta che non esiste (esempio -3) gli faccio lanciare l'eccezione di cui sopra.
Che ne dite? Ho fatto ancora più casini? Grazie mille in anticipo.

K)M4STER
Fermo fermo, le classi che identificano le eccezioni non devono ritornare un bel niente!!! Io le ho lasciate vuote!

ToBlEr:OnE
Originally posted by K)M4STER
Fermo fermo, le classi che identificano le eccezioni non devono ritornare un bel niente!!! Io le ho lasciate vuote!


tu vuoi dirmi che hai esteso Exception e dentro nulla? Nemmeno un costruttore?

K)M4STER
Certo il costruttore è da mettere, altrimenti da errore, ma all'interno non ho scritto nulla...

Powered by: vbHome (lite) v4.1 and vBulletin v2.3.1 - Copyright ©2000 - 2002, Jelsoft Enterprises Limited
Mantained by dsy crew (email) | Collabora con noi | Segnalaci un bug | Archive | Regolamento |Licenze | Thanks | Syndacate