Win a copy of Design for the Mind this week in the Design forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Is MyRunnable Abstract??

 
sonir shah
Ranch Hand
Posts: 435
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
[CODE}
class MyRunnable implements Runnable
{
public static void main(String[] args)
{
new Thread( new MyRunnable(2) ).start();
}
public void run(int n)
{
for(int i=0; i<n; i++)
{
System.out.println("Hello World");
}
}
}
[/CODE]
I tried running this code, but it shows a compile time error saying that MyRunnable should be declared Abstract.
But there is no Abstract method in class MyRunnable???
Please explain..
 
Valentin Crettaz
Gold Digger
Sheriff
Posts: 7610
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
You are trying to instantiate MyRunnable with a constructor taking one argument and you haven't declared any constructor. By default you only have the default constructor taking no arguments.
Moreover you declare the run method taking one parameter and whereas the run method of the Runnable interface doesn't take any arguments. The compiler says that MyRunnable should be declared abstract because there is no method run() with no parameters...
[ January 11, 2002: Message edited by: Valentin Crettaz ]
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic