IOException

Status
Nicht offen für weitere Antworten.

alias_host

Aktives Mitglied
für diesen befehl:

Code:
	 Socket s = server.accept();

brauche ich eine IOException. ich kann aber in den konstruktor nicht

Code:
        throws IOException

schreiben, weil ich da schon Frame implementiere. und auf ne try abfrage hab ich auch keine lust. gibt es da eine andere lösung?

Mfg alias_host
 

alehandro

Mitglied
wieso?
Code:
class Klasse implements Frame throws IOException
funktioniert nicht? :shock:
also zwei extends geht nicht, alles andere kannst Du soviel du willst benutzen. Implementiern, Exceptions schmeissen. .....
 

alias_host

Aktives Mitglied
und wie kann ich hier:

Code:
	public XXX()throws MalformedURLException{

ne IOException "reinschreißen?
 

moormaster

Top Contributor
Kann es sein, dass du da so einiges durcheinander bringst? Dass deine Klasse von Frame erbt hat absolut 0 damit zu tun, wie mit Exceptions verfahren wird. Wenn eine Methode Exceptions wirft, dann musst du die mit try/catch abfangen oder weiter werfen. Letztendlich kommt man um das try/catch Konstrukt aber nicht drum herum.

Code:
 public void methodeMitException() throws BlaException
 {
  // tuwas

  ...

  if (fehler)
   throw new BlaException("blubb");
 }

 public void benutzeMethodeI()
 {
  try
  {
    methodeMitException();
  }
  catch (BlaException e)
  {
   System.out.println("Fehler passiert:");
   e.printStackTrace();
  }
 }

 // bei dieser Methode wird die BlaException einfach automatisch weitergeworfen; muss jedoch letztendlich
 // vom Aufrufer auch wieder in einem try/catch Block aufgefangen werden
 public void benutzeMethodeII() throws BlaException
 {
   methodeMitException();
 }

 public static void main(String[] args)
 {
  benutzeMethodeI();  // geht ohne try/catch, da die Exception bereits aufgefangen und nicht weitergeworfen wurde

  try
  {
   benutzeMethodeII();  // diese Methode wirft die Exception weiter und daher muss die Exception von hier
                                   // aufgefangen werden, da die main Methode keine Exceptions wirft.
  }
  catch (BlaException e)
  {
   System.out.println("Fehler passiert:");
   e.printStackTrace();
  }
 }

Ich verstehe auch nicht, was daran so schlimm ist, ein
Code:
 try {
  // ...
 } catch (... e) {
 }

um den Befehl herumzuschreiben...
 

moormaster

Top Contributor
alias_host hat gesagt.:
und wie kann ich hier:

Code:
	public XXX()throws MalformedURLException{

ne IOException "reinschreißen?

mit

Code:
	public XXX()throws MalformedURLException,IOException{

?
 

alias_host

Aktives Mitglied
habe ich auch probeirt, dann kommt aber ne fehlermeldung, wenn ich n construktor aufrufe, ob es der eigene ist oder einer aus einer anderen klasse

XXX s= new XXX(); >>Unhandled exception type IOException
 

moormaster

Top Contributor
alias_host hat gesagt.:
habe ich auch probeirt, dann kommt aber ne fehlermeldung, wenn ich n construktor aufrufe, ob es der eigene ist oder einer aus einer anderen klasse

XXX s= new XXX(); >>Unhandled exception type IOException

weil da der try/catch Block fehlt beim Aufruf...
 

Leroy42

Top Contributor
Womit wir wieder am Anfangen wären! Von wegen Faulheit... :cool:

Mach einfach um deine gesamte Main

Code:
public static void main(String[] args) throws Throwable {...}

Dann brauchst du tatsächlich nie mehr ein try-catch :cool:
 

moormaster

Top Contributor
Leroy42 hat gesagt.:
Womit wir wieder am Anfangen wären! Von wegen Faulheit... :cool:

Mach einfach um deine gesamte Main

Code:
public static void main(String[] args) throws Throwable {...}

Dann brauchst du tatsächlich nie mehr ein try-catch :cool:

und wenn man sowas dann mal macht, wird man auch wieder angemeckert... weil wer zu faul für try/catch ist, ist mit Sicherheit auch zu faul in diesen "globalen" try/catch Block dann eine vernünftige Fehlerbehandlung einzubauen ^^
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben