Probably because how else would objects of type Serializable (for example) be stored in a Vector (which can only take Objects).
Does it play a role in convertion Interface variables to Objects?
Originally posted by Randall Twede:
6.4.3 The Members of an Interface Type
If an interface has no direct superinterfaces, then the interface implicitly declares a public abstract member method m with signature s, return type r, and throws clause t corresponding to each public instance method m with signature s, return type r, and throws clause t declared in Object, unless a method with the same signature, same return type, and a compatible throws clause is explicitly declared by the interface.
two things i find interesting about this are:
1) a non-abstract member can be overridden to be abstract.
2) since any class implementing the interface inherits from Object anyway, whats the point?