Declarations and Access Control



  • It must not declare any checked exceptions that are broader than the exceptions declared in the interface method.
  • It may declare runtime exceptions on any interface method implementation regardless of the interface declaration.
  • It must maintain the exact signature (allowing for covariant returns) and return type of the methods it implements (but does not have to declare the exceptions of the interface).
  • A class implementing an interface can itself be abstract.
  • An abstract implementing class does not have to implement the interface methods (but the first concrete subclass must).
  • A class can extend only one class (no multiple inheritance), but it canimplement many interfaces.
  • Interfaces can extend one or more other interfaces.
  • Interfaces cannot extend a class, or implement a class or interface.
  • When taking the exam, verify that interface and class declarations are legal before verifying other code logic