Download the JDK
Search the Tutorials
Hide the TOC
Trail: Learning the Java Language
Lesson: Classes and Objects
Classes and Objects
Classes
Declaring Classes
Declaring Member Variables
Defining Methods
Providing Constructors for Your Classes
Passing Information to a Method or a Constructor
Objects
Creating Objects
Using Objects
More on Classes
Returning a Value from a Method
Using the this Keyword
Controlling Access to Members of a Class
Understanding Instance and Class Members
Initializing Fields
Summary of Creating and Using Classes and Objects
Questions and Exercises
Questions and Exercises
Nested Classes
Inner Class Example
Summary of Nested Classes
Questions and Exercises
Enum Types
Questions and Exercises
Annotations
Questions and Exercises
Home Page > Learning the Java Language > Classes and Objects
Questions and Exercises: Annotations

### 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