第七课 Android中的注解

1、@Deprecated

表示不鼓励使用此构造函数、字段、本地变量、方法、包、参数和类等,通常因为它很危险,或者存在更好的替代方案。

2、@SuppressLint

Lint是一个静态检查器,围绕Android项目的正确性、安全性、性能、可用性以及可访问性进行分析检查,检查对象包括XML资源、位图、ProGuard配置文件、源文件甚至编译后的字节码。

针对这个检查器,可以使用@SuppressLint标注忽略指定的警告。

3、@Override

表示当前方法的定义将覆盖超类中的方法

4、注解的注解

元注解说明取值
@Target表示该注解可以用在什么地方ElementType.ANNOTATION_TYPE 可以应用于注释类型。
ElementType.CONSTRUCTOR 可以应用于构造函数。
ElementType.FIELD 可以应用于字段或属性。ElementType.LOCAL_VARIABLE 可以应用于局部变量。
ElementType.METHOD 可以应用于方法级注释。
ElementType.PACKAGE 可以应用于包声明。
ElementType.PARAMETER 可以应用于方法的参数。ElementType.TYPE 可以应用于类的任何元素。
@Retention表示需要在什么级别保存该注解信息1.SOURCE:在源文件中有效(即源文件保留)
2.CLASS:在class文件中有效(即class保留)
3.RUNTIME:在运行时有效(即运行时保留)
@Documented表示将此注解包含在Javadoc中
@Inherited表示允许子类继承父类中的注解

示例:

//表示@Override这个注解只能用于方法,且在源码中有效
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.SOURCE)
public @interface Override {
}

//见上表
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target(value={CONSTRUCTOR, FIELD, LOCAL_VARIABLE, METHOD, PACKAGE, PARAMETER, TYPE})
public @interface Deprecated {
}

//见上表
@Target({TYPE, FIELD, METHOD, PARAMETER, CONSTRUCTOR, LOCAL_VARIABLE})
@Retention(RetentionPolicy.SOURCE)
public @interface SuppressWarnings {
    String[] value();
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值