Home / Java Programming / Language Fundamentals :: Discussion

Discussion :: Language Fundamentals

  1. Which is the valid declarations within an interface definition?

  2. A.
    public double methoda();
    B.
    public final double methoda();
    C.
    static void methoda(double d1);
    D.
    protected void methoda(double d1);

    View Answer

    Workspace

    Answer : Option A

    Explanation :

    Option A is correct. A public access modifier is acceptable. The method prototypes in an interface are all abstract by virtue of their declaration, and should not be declared abstract.

    Option B is wrong. The final modifier means that this method cannot be constructed in a subclass. A final method cannot be abstract.

    Option C is wrong. static is concerned with the class and not an instance.

    Option D is wrong. protected is not permitted when declaring a method of an interface. See information below.

    Member declarations in an interface disallow the use of some declaration modifiers; you cannot use transient, volatile, or synchronized in a member declaration in an interface. Also, you may not use the private and protected specifiers when declaring members of an interface.


Be The First To Comment