iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >java中的注解是什么意思
  • 926
分享到

java中的注解是什么意思

2023-06-20 19:06:56 926人浏览 泡泡鱼
摘要

这篇文章主要介绍“java中的注解是什么意思”,在日常操作中,相信很多人在java中的注解是什么意思问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”java中的注解是什么意思”的疑惑有所帮助!接下来,请跟着小编

这篇文章主要介绍“java中的注解是什么意思”,在日常操作中,相信很多人在java中的注解是什么意思问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”java中的注解是什么意思”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

目录
  • 注解

    • 什么是注解

    • 内置注解

    • 元注解

    • 自定义注解

      • 实例

注解

什么是注解

  • Annotation是从jdk5.0开始引入的新技术

  • Annotation的作用:

    • 不是程序本身,可以对程序做出解释(这一点和注释(comment)没什么区别)

    • 可以被其他程序(比如:编译器等)读取

Annotation的格式:

注解是以"@注释名"在代码中存在的,还可以添加一些参数值,例如:

@SuppressWarnings(value=“unchecked”)

Annotation在哪里使用

可以附加到package,class,method,field等上面,相当于给他们添加了额外的辅助信息,我们可以通过反射机制编程实现对这些元数据的访问

内置注解

@Override:定义在Java.lang.Override中,此注释只适用于修饰方法,表示一个方法声明打算重写超类中的另一个方法声明

public class Test extends Object{//@Override 重写注解,必须是重写超类的方法,不然会发生编译器上的错误    @Override    public String toString() {        return super.toString();    }}

@Deprecated:定义在Java.lang.Deprecated中,此注释可以用于修饰方法,属性,类,表示不鼓励程序员使用这样的元素,通常是因为它很危险或者存在更好的选择

@Deprecated   //意思为方法已经过时,存在危险,或者有更好的方法    public static void test01(){        System.out.println("过时的");    }    public static void main(String[] args) {        test01();    }

虽然是过时或存在危险,但是依然可以调用此方法,

java中的注解是什么意思

根据上面的图片也会看到,如果被@Deprecated注释上的方法,在调用的时候,会画一点横线

@suppressWarnings:定义在java.lang.SuppressWarnings中,用来抑制编译时的警告信息,

与前两个注释有所不同,你需要添加一个参数才能正常使用,这些参数都是已经定义好了的,我们选择性的使 用就好了

√@SuppressWarnings(“all”)

√@SuppressWarnings(“unchecked”)

√@SuppressWarnings(value={“unchecked”,“deprecation”})

√等等

元注解

元注解的作用就是负责注解其他注解,Java定义了4个标准的meta-annotation类型,他们被用来提供对其他annotation类型作说明

这些类型和它们所支持的类在Java.lang.annotation包中可以找到(@Target@Retention@Documented@Inherited

@Target:用于描述注解的使用范围(即:被描述的注解可以用在什么地方)

@Retention:表示需要在什么级别保存该注释信息,用于描述注解的生命周期

(SOURCE<CLASS<RUNTIME)

@Document:说明该注解将被包含在Javadoc中

@Inherited:说明子类可以继承父类中的该注解

//测试元注解    @MyAnnotationpublic class Test02 {}//定义一个注解//Target  表示我们的注解可以用到哪些地方@Target(value = {ElementType.METHOD,ElementType.TYPE}) //METHOD注解可以在方法TYPE可以在类//Retention 表示我们的注解在什么地方还有效//runtime>class>sources@Retention(value = RetentionPolicy.RUNTIME)//Documented 表示是否将我们的注解生成在Javadoc中@Documented//子类可以继承父类的注解@Inherited @interface MyAnnotation{}

自定义注解

使用**@interface**自定义注解时,自动继承了java.lang.annotation.Annotation接口

分析:

@interface用来声明一个注解,格式:public @interface 注解名{ 定义内容 }

其中的每一个方法实际上是声明了一个配置参数

方法的名称就是参数的名称

返回值类型就是参数的类型(返回值只能是基本类型,Class,String,enum)

可以通过default来声明参数的默认值

如果只有一个参数成员,一般参数名为value

注解元素必须要有值,我们定义注解元素时,经常使用空字符串,0作为默认值

实例
public class Test03 {    //注解可以显示赋值,如果没有默认值,我们就必须给注解赋值    @MyAnntotation2(schools = {"河北软件","宽城职教"})    public void Test(){}    @MyAnntotation3("ccl")  //可以省略value    public void Test1(){}}//多次参数的注解@Target({ElementType.TYPE,ElementType.METHOD})  //可以用到哪里@Retention(RetentionPolicy.RUNTIME)   // 表示在什么地方有效@interface MyAnntotation2{    //注解的参数:参数类型+参数名();    String name() default "";    int age() default 0;    int id() default -1; //如果默认值为-1,代表不存在    String[] schools();}//一个参数的注解@Target({ElementType.TYPE,ElementType.METHOD})@Retention(RetentionPolicy.RUNTIME)@interface MyAnntotation3{    String value() ;}

如果注解的参数只要有一个的时候,可以将参数名设为value,这样在写注解的时候,括号里可以省略value参数名,而别的参数名需要写上

@interface MyAnntotation3{    String value() ;}

到此,关于“java中的注解是什么意思”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: java中的注解是什么意思

本文链接: https://www.lsjlt.com/news/299720.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • c语言怎么保证除完还是小数
    在 c 语言中,整数除法只能得到整数结果,要得到小数结果,需将操作数显式转换为浮点数:将一个操作数转换为浮点数,如 float result = num1 / (float)num2;将...
    99+
    2024-05-14
    c语言
  • c语言怎么让结尾不输出空行字符
    要阻止 c 语言程序结尾输出空行字符,可以使用以下方法:将 main 函数的返回值类型改为 void;在 main 函数中显式返回 0;调用 fflush(stdout) 函数刷新标准输...
    99+
    2024-05-14
    c语言
  • c语言怎么让结尾不输出空行数据
    在 c 语言中,可通过以下方法抑制 printf() 函数在程序结束时打印末尾空行:调用 fflush() 函数刷新缓冲区,立即输出所有数据;使用 setvbuf() 函数关闭缓冲,使数...
    99+
    2024-05-14
    c语言
  • c语言怎么让结尾无空行
    在 c 中去除结尾空行的方法:使用 fflush() 刷新缓冲区。使用 setvbuf() 将缓冲模式设置为 _ionbf。使用 printf 宏,它默认禁用缓冲。 如何在 C 语言中...
    99+
    2024-05-14
    c语言
  • c语言怎么输入实数赋值
    c语言中使用scanf()函数输入实数并赋值给变量:格式:scanf("%lf", &amp;variable);%lf是格式说明符,指定输入双精度浮点数;&...
    99+
    2024-05-14
    c语言
  • c语言怎么表达负数
    c语言中,负数以减号 (-) 表示,放在数字或变量前。负数运算规则包括:绝对值取正数;加正数或负数,结果取决于绝对值大小;乘或除以正数或负数,结果由符号奇偶性决定。负数的平方始终为正数,...
    99+
    2024-05-14
    c语言
  • c语言怎么输入Jac数列
    jacobi 数列的输入和生成方法分别有:1. 直接输入法:使用 scanf() 函数逐项输入数列。2. 递归生成法:使用递归公式生成数列,需初始化数列的前两项,然后按公式生成后续项。 ...
    99+
    2024-05-14
    c语言
  • c语言怎么把数组变成字符串
    在 c 语言中,将数组转换成字符串的方法包括:使用 sprintf() 将数组格式化为字符串。使用 strcpy() 将数组复制到字符串。使用 strncpy() 将指定长度的数组复制到...
    99+
    2024-05-14
    c语言
  • c语言怎么批量注释
    批量注释 c 语言代码的方法有:使用代码编辑器:使用快捷键或菜单命令自动添加 // 注释符号。使用注释工具:如 doxygen 和 cutter,批量添加行注释、块注释和文档注释。使用脚...
    99+
    2024-05-14
    python sublime c语言
  • c语言怎么把选中的全部注释
    c语言中注释选中内容可通过以下步骤实现:选中要注释的代码。根据使用的编辑器或ide,执行注释操作,例如在visual studio中右键单击并选择“注释所选内容”。添加注释内容。保存更改...
    99+
    2024-05-14
    sublime c语言
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作