There's something I'm not sure to understand when it comes to using Java annotations. Here is an example :
I create a @Log annotation and add some functionality with it (every method annotated with @Log runs some log before executing the method).
Now I'm creating a new @SuperLog annotation like this one :
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
@Log
public @interface SuperLog {
............
}
This @SuperLog must provide all the stuff @Log does, plus some extra stuff specific to @SuperLog.
Unfortunately when I'm executing some methods annotated with @SuperLog, the log specific to @Log doesn't execute.
I don't understand why : the fact @SuperLog is annotated with @Log doesn't mean it "inherits" properties from @Log ? Shouldn't @SuperLog do every thing @Log is supposed to do?