zoukankan      html  css  js  c++  java
  • 注解总结

    ******注解*****Annotation
    概述:Java提供了一种原程序中的元素关联任何信 息和任何元数据的途径的方法

    元数据:可以理解为满足某种结构的数据key=value

    注解和注释的区别:
    注释只能够在源码中存在
    注解不仅能在源码中存在,而且作用在编译时期和运行时期。

    ***************************************
    常见的注解:
    1,@override 重写方法
    表示该直接修饰的方法必须满足重写的规则,否则编译报错,该注解有编译器提取识别。

    2,@Deprecated 表示该方法已经过时了

    3,suppressWarnings 表示忽略警告, 可以通过这个注解消除警告线,但是并没有去除安全隐患。

    4,FunctionInterface
    表示当前接口是一个函数接口,
    函数接口:当一个接口中只有一个抽象方法的时候 成为函数式接口
    抽象方法:抽象方法只声明返回的数据类型、方法名称和所需的参数,没有方法体,也就是说抽象方法只需要声明而不需要实现。当一个方法为抽象方法时,意味着这个方法必须被子类的方法所重写。


    注解的分类
    1)按照运行机制划分:
    源码注解:只在源码中存在,编译成.class文件就 不存在了。
    编译时注解:在源码和.class文件中都存在。像前 面的@Override、@Deprecated、 @SuppressWarnings,他们都属于编译时 注解。 执行时就不存在

    运行时注解:在运行阶段还起作用,甚至会影响运 行逻辑的注解。开发者还可以获取该 注解。

    2)按照来源划分:
    【来自JDK的注解——来自第三方的注解——自定义注解】

    3)元注解:
    元注解是给注解进行注解,可以理解为注解的注解就是元注解。

    **************************************
    注解的语法:
    1,注解是有@interface关键字来修饰
    //不是接口
    2,注解的成员,
    //String name();
    可默认值int age() default 18;
    也可是常量
    注意:仅看起来像接口的方法,类似成员变量,不 能有参数

    成员的类型:八大基本类型,string,class,annotation,枚举,一维数组。

    3,注解类可以没有成员,没有成员的注解称为标识 注解。
    4,如果注解只有一个成员,则成员名必须取名为 value(),在使用时可以忽略成员名和赋值号( =)。
    **************元注解

    @Target({ElementType.METHOD,ElementType.TYPE})
    是这个注解的作用域

    @Retention(RetentionPolicy.RUNTIME)
    是它的生命周期

    @Inherited
    是一个标识性的元注解,它允许子注解继承它。

    @Documented
    生成javadoc时会包含注解。

    ***************************************
    注解的使用:
    四种格式:
    格式一:@<注解名>(<成员名1>=<成员值1>,<成员名 2>=<成员值2>,…)
    注意:有多少属性就写多少属性

    格式二:@注解名称(属性的值)
    注意:适用于只有一个属性的情况

    格式三:@注解名称({属性值1,属性值2,属性值 3,....})
    注意:使用于属性类型是数组的情况

    格式四:@注解名称
    注意:适用于是标记注解的情况


    创建一个注解,:用四个元注解定义这个注解

    创建类关联这个注解。

  • 相关阅读:
    PHP pcntl
    Linux 远程登录命令telnet
    git .gitignore不生效
    使用 GoLand 启动 运行 Go 项目
    Go语言: 万物皆异步
    MYSQL 单表一对多查询,将多条记录合并成一条记录
    详解PHP中instanceof关键字及instanceof关键字有什么作用
    all_user_func()详解
    python的反射
    python 的魔术方法
  • 原文地址:https://www.cnblogs.com/zzjlxy-225223/p/10738705.html
Copyright © 2011-2022 走看看