Nice But in Java, this is still called an interface. Not an abstract interface An interface is by definition purely abstract, because it cannot do anything concretely. This declaration is redundant, so we usually (always?) omit the "abstract" keyword to define an interface.
By the way, your interface could also be written like this :
Yes you can use this before any interface like you did.
An interface is implicitly abstract so there is no need to declare it abstract. As interface variables are all implicitly public static final whether you declare it or not. So it would create redundancy to use abstract in interface declaration and public static final in constant declaration. [ April 30, 2008: Message edited by: sachin verma ]