我有一个具有以下签名的功能
public static String myFunction(@Nonnull String param)
Run Code Online (Sandbox Code Playgroud)
当我用param调用它为null时,我得到以下异常:
Caused by: java.lang.IllegalArgumentException: Argument for @Nonnull parameter 'param' of com/MyClass.myFunction must not be null
at com.MyClass.$$$reportNull$$$0(MyClass.java)
Run Code Online (Sandbox Code Playgroud)
不应该在运行时检查javax.annotation.Nonnull.
谁真的抛出异常,为什么?
PS我使用Oracle JDK 1.8.0_102从IntelliJ IDEA 2016.3以调试模式运行Tomcat服务器