Guava-annotations

本文介绍了Java注解的基本概念及其核心元注解,如@Retention、@Target等,并详细解释了它们如何作用于不同元素上。此外,还给出了几个具体注解的例子,包括@Beta、@GwtCompatible和@GwtIncompatible。
</pre><pre name="code" class="cpp">Java注解主要是附加代码中的信息,与注释不一样。
注解用于编译,运行时,以及使用,起到说明、配置的功能。
@Target @Retention @Documented @Inherited
<span style="color: rgb(51, 51, 51); font-family: 'Helvetica Neue', Helvetica, Tahoma, Arial, STXihei, 'Microsoft YaHei', 微软雅黑, sans-serif; font-size: 16px; line-height: 28.799999237060547px; text-indent: 16px;">@Retention: 定义注解的保留策略 </span><span style="color: rgb(51, 51, 51); font-family: 'Helvetica Neue', Helvetica, Tahoma, Arial, STXihei, 'Microsoft YaHei', 微软雅黑, sans-serif; font-size: 16px; line-height: 28.799999237060547px; text-indent: 16px;">@Target:定义注解的作用目标 </span>
<span style="color: rgb(51, 51, 51); font-family: 'Helvetica Neue', Helvetica, Tahoma, Arial, STXihei, 'Microsoft YaHei', 微软雅黑, sans-serif; font-size: 16px; line-height: 28.799999237060547px; text-indent: 16px;"><span style="color: rgb(51, 51, 51); font-family: 'Helvetica Neue', Helvetica, Tahoma, Arial, STXihei, 'Microsoft YaHei', 微软雅黑, sans-serif; font-size: 16px; line-height: 28.799999237060547px; text-indent: 16px;">@Document:说明该注解将被包含在javadoc中 <span style="color: rgb(51, 51, 51); font-family: 'Helvetica Neue', Helvetica, Tahoma, Arial, STXihei, 'Microsoft YaHei', 微软雅黑, sans-serif; font-size: 16px; line-height: 28.799999237060547px; text-indent: 16px;">@Inherited:说明子类可以继承父类中的该注解 详情参考博客【1】。</span></span></span>
</pre><pre name="code" class="cpp">
</pre><pre name="code" class="cpp">@beta注解:要考虑到要有更新操作。使用添加注释的beta-API一般是安全的。
@Retention(RetentionPolicy.CLASS)
@Target({
    ElementType.ANNOTATION_TYPE,
    ElementType.CONSTRUCTOR,
    ElementType.FIELD,
    ElementType.METHOD,
    ElementType.TYPE})
@Documented
@GwtCompatible
public @interface Beta {}

说明了: 返回一个GWT序列化类型.
 

@Retention(RetentionPolicy.CLASS)
@Target({ ElementType.TYPE, ElementType.METHOD })
@Documented
@GwtCompatible
public @interface GwtCompatible {
</pre><pre name="code" class="cpp">boolean serializable() default false;
  boolean emulated() default false;
}

/**
 * 说明一个方法可能无法与 GWT 一起使用
 * 他只能用于被 @GwtCompatible 标志的类的字段,方法和内部类
 */
@Retention(RetentionPolicy.CLASS)
@Target({
        ElementType.TYPE, ElementType.METHOD,
        ElementType.CONSTRUCTOR, ElementType.FIELD })
@Documented
@GwtCompatible
public @interface GwtIncompatible {
    /**
     * 用于表示不兼容 GWT 的原因
     */
    String value();
}









参考博客[1]: http://www.cnblogs.com/olmlo/p/3566778.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值