Why interface methods can not be & ldquo; Static & rdquo; & Amp; & Ldquo; Final & rdquo;

In Java Interface, we can have only final variables possible. We can also create static variables in Interface. But, at the same time we are not able to create static/final methods as Interface are only meant for Static Methods.

What is exactly the reason for not allowing static/final methods in Interface ?


A final method can't be overridden. That defies the purpose of having an interface if you cannot actually implement the method.

For the static part, see this question.