Win a copy of JDBC Workbook this week in the JDBC and Relational Databases forum
or A Day in Code in the A Day in Code forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
  • Campbell Ritchie
  • Paul Clapham
  • Jeanne Boyarsky
  • Junilu Lacar
  • Henry Wong
  • Ron McLeod
  • Devaka Cooray
  • Tim Cooke
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Frits Walraven
  • Tim Holloway
  • Carey Brown
  • Piet Souris
  • salvin francis
  • fred rosenberger


Ranch Hand
Posts: 290
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
class drum
void method2(int j)

class vote extends drum
void method2(final int j)throws ArithmeticException

hello everybody,
in the above code i have taken two classes in which i am basically doing overriding.
My question is when i override the method2() in the vote class i specify an ArithmeticException in it's clause and it does not give an error.
If i put any other exception out there like interruptedException,or nullpointerexception i get an error throw's clause not compatible.
I think the rules for overrriding are
1)The exception thrown in overridden method can be specified in the throws clause of the overriding method.
2)or the subclass of the exception or do not specify any exception in the overriding method.
please throw some light on it.
Ranch Hand
Posts: 118
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
hi nitin,
there are two kind of exceptions-----
1) Caught Exceptions
2) Uncaught Exceptions
the caught exceptions are those exceptions which can be caught at the compile time i.e., you can specify them in throws clause or in try-catch block.
the uncaught exceptions are those exceptions which your jvm is unable to handle at the runtime and are thrown by the jvm at the runtime,

ArithmaticException is a caught exception i.e., you can trap it and process accordingly, but if something goes null how will you assign or specify something at runtime when your compiler hasn't generated the bytecode for that.
similar case is with InterruptedException (when a thread interrupted) can't be thrown instead it can be caught and processed accordingly.

lets say a thread is interrupted somehow, now if you want to throw this exception , which thread will execute the code for throwing this exception i.e.(..throws InterruptedException)
so you have to catch this exception in any case.
I'm full of tinier men! And a tiny ad:
Devious Experiments for a Truly Passive Greenhouse!
    Bookmark Topic Watch Topic
  • New Topic