你是说为什么注解能做到这个吧。
官方定义的,类似于在代码中打一个标记,有分编译时和运行时。
对注解进行解析的代码在编译器和运行时中,简单说就是编译器和运行时发现类似的@xxx就看看是不是有对应的注解类型,有就对其进行相应的处理。
至于如何去找这个注解标记,那就去看看编译器和jvm的源码了,一般学习不用纠结。
就好比定义一个整型变量就是用int,这就是语法!
如果第三方的话,一般是属于运行时注解,通过反射调用的。即通过反射调用某个方法,加载某个类等等操作的时候,获取注解信息(反射api有提供方法获取),然后针对相应的注解进行处理。