@Deprecated

欢迎关注微信公众号: 程序员小圈圈
原文首发于: www.zhangruibin.com
本文出自于: RebornChang的博客
转载请标明出处^_^

最近几天再过一遍阿里啊Java开发规范,打算将里面感觉理解模糊的小知识点做一个记录。
然后看到了@Deprecated注解,那这个注解有啥用呢?

字面含义为:
| deprecated |
| 英[ˈdeprəkeɪtɪd][](javascript:?[](javascript:? | 美[ˈdeprəkeɪtɪd][](javascript:?[](javascript:? |

| v. | 对…表示极不赞成; 强烈反对; |

| [词典] | deprecate的过去分词和过去式; |

那在Java代码中怎么使用有什么用途呢?

可以这么理解:
如果某类或某方法加上该注解之后,表示此方法或类不再建议使用,调用时也会出现删除线,不是不能用,而是不推荐使用。因为还有更好的方法可以调用。

看下源码:

/*
 * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * * */   package java.lang;

import java.lang.annotation.*;
import static java.lang.annotation.ElementType.*;

/**
 * A program element annotated @Deprecated is one that programmers
 * are discouraged from using, typically because it is dangerous, * or because a better alternative exists.  Compilers warn when a * deprecated program element is used or overridden in non-deprecated code. * * @author Neal Gafter
 * @since 1.5
 * @jls 9.6.3.6 @Deprecated
 */
@Documented @Retention(RetentionPolicy.RUNTIME)
@Target(value={CONSTRUCTOR, FIELD, LOCAL_VARIABLE, METHOD, PACKAGE, PARAMETER, TYPE})
public @interface Deprecated {
}

原文注解翻译过来如下:

注释为@deprecated的程序元素是不鼓励程序员使用的元素,通常是因为它是危险的,或者是因为存在更好的替代方案。编译器在非弃用代码中使用或重写预先指定的程序元素时发出警告。

那在代码中使用效果是怎样的呢?
如下图所示:

,博主的微信公众号
程序员小圈圈’开始持续更新了哟~~
识别二维码或者直接搜索名字 ‘程序员小圈圈’ 即可关注本公众号哟~~
不只是有技术哟~~
还有很多的学习娱乐资源免费下载哦~~
还可以学下教育知识以及消遣娱乐哟~~
求关注哟~~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值