In Java, all methods in an interface are public even if we do not specify public with method names. Also, data fields are public static final even if we do not mention it with fields names. Therefore, data fields must be initialized.
Consider the following example, x is by default public static final and foo() is public even if there are no specifiers.
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.