What will be the result of compilation and execution of the following code?

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.reflect.*;


@Retention(RetentionPolicy.RUNTIME)
@interface Anno{
    int value() default 5;
}
public class Test {
    @Anno(10)
    public static void test(int i) { }
    public static void main(String [] args) {
        Method m = new Test().getClass().getMethod("test");
        Anno anno = m.getAnnotation(Anno.class);
        System.out.println(anno.value());
    }
}
Explanation

Compilation error.

Method Class.getMethod() can throw NoSuchMethodException. It is a checked exception.

Therefore, it must be caught using try ... catch ... inside the main method or declared in the throws clause of method declaration.

Java
Java Quiz
Start Quiz

or Read more about Java Quiz

Follow CodeGalaxy

Mobile Beta

Get it on Google Play
Send Feedback