Trail: Learning the Java Language
Lesson: Classes and Objects
Questions and Exercises: Annotations
Questions and Exercises

Questions

1. What is wrong with the following interface?
public interface House {
    @Deprecated
    void open();
    void openFrontDoor();
    void openBackDoor();
}
2. Compile this program:
interface Closable {
    void close();
}

class File implements Closable {
    @Override
    public void close() {
        //... close this file...
    }
}
What happens? Can you explain why?

3. Consider this implementation of the House interface, shown in Question 1.

public class MyHouse implements House {
    public void open() {}
    public void openFrontDoor() {}
    public void openBackDoor() {}
}
If you compile this program, the compiler complains that open has been deprecated (in the interface). What can you do to get rid of that warning?

Check your answers.

Previous page: Annotations
Next page: Interfaces and Inheritance