Hi, I need some help for understanding following problem.
abstract class Hall{
public abstract void getFireStation();
}
public class Haddon extends Hall{
public static void main(
String argv[]){
new Haddon().getFireStation();
}
public synchronized void getFireStation(){
System.out.print("opposite");
}
}
The output of this is : opposite
My question is that the abstract class Hall has one abstract method. The Haddon class extends abstract class but doesn't seem to define 'same' abstract method getFireStation. It has that method but the signature contains syncronized keyword. Then, isn't it becomes method overloading? And in that case Haddon class also be declared as abstract since the original method from abstract class is not implemented.
How come syncronized method is called?
Thanks in advance.