java高级 - 注解
/** * Created by Michael on 2019/12/17. * @interface代表注解 */ @Target(ElementType.FIELD) //放到哪里,这里代表放到属性上面 @Retention(RetentionPolicy.RUNTIME) //什么时候起作用 .RUNTIME运行时 .CLASS编译时 public @interface ViewById { int value(); } @interface代表声明一个注解,注解只是一个标识 使用注解: public class MainActivity extends AppCompatActivity { @ViewById(R.id.tv) private TextView tv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ViewUtils.inject(this); tv.setText("hello lzy!"); } } 如果不加ViewUtils.inject(),会报错,说明注解只是一个标识,我们还需要进行处理: public class