public static void main(String s[])
{
Thread t=Thread.currentThread();
t.setName("main");
try
{
for(int i=0;i<=5;i++)
{
System.out.println(i);
Thread.sleep(1000);//interrupted exception(System provides error on its own)
}
}
catch(InterruptedException e)
{
System.out.println("main thread interrupted");
}
}
`In meinem Verständnis, wenn es eine Ausnahmebedingung gibt, geht das Steuerelement zum Fang, implementiert es und hinterlässt den Code. Wenn wir thread.sleep benutzen und einen Catch für disruptedException erzeugen, warum läuft es weiter? anstatt aufzuhören. Dies ist der Code, wenn die for-Schleife zum ersten Mal ausgeführt wird, gibt sie "0" aus, wenn sie auf thread.sleep stößt, also auf eine interruptedexception, sollte es nicht gehen, S.O.P abzufangen und auszuführen und zu beenden?Warum hört thread.sleep nicht beim ersten Fang auf?
Nun ... haben Sie eine Ausnahme ausgelöst, die dazu führen würde, dass 'sleep' beendet wird? –
Warum würden Sie annehmen, dass es beendet wird, wenn Sie es nicht erzählten? –