Originally posted by Rob Prime:
Interfaces do not have any implementation details. Since instance and static variables are part of the implementation, they cannot be part of interfaces. Hence the only "variables" that can be part of interfaces are actually constants - static and final. And everything in an interface is public.