zoukankan      html  css  js  c++  java
  • java注解学习

    在学习期间中,学到了注解。关于注解,自己在这里学习总结如下:

    1.注解这个机制是在jdk1.5及以后才有的。注解的使用可以使代码更加的简洁。在一些框架的使用中, 会使用到很多的xml,如果会使用注解的话,会使的代码会非常的简洁。

    2.注解的作用还可以给与提示,如:Override可以提示

    java SE 1.5 的内置三种注解

    1.@Override  :重写的时候使用,子类重写父类的方法时可以使用,如果这个方法父类没有,也就是子类独有的方法,则使用这个注解会报错提示。所以一般重写的方法都建议使用这个注解,因为可以提示你这个方法是重写的,同时还会在你不小心写错方法名的时候提示你。

    2.@Deprecated :这个注解的意思是表示这个方法是已弃用的。警告你要使用这个方法的话请慎用。

    3.@SuppressWarnings:压制警告,关闭不当的编译警告信息

    接下来讲讲自定义注解:

    自定义注解的构建:

      public @interface demo{ }  

    以上就是一个自定义注解

    注解相当于一个特殊的类,在定义注解前,必须先连接一下元注解,声明注解属性还是方法什么的,声明注解的存活域。

    1.@Target :这个元注解可以定义你自定义注解的具体用在什么地方,参数从ElementType里面选择。比如:

    @Target(ElementType.METHOD)

    public @interface demo{ }  :这个意思就是自定义注解使用在方法上面

    ElementType里面有很多值,常用的如下:

      constructor:构造方法

      field:字段声明

      local_variable:局部变量声明

      method:方法声明

      parameter:参数声明

      package:包声明

      type:类、接口、enum声明

    2.@Retention :在什么级别保留该注解,参数从RetentionPolicy里面取

    有三种情况:

    @Retention(RetentionPolicy.SOURCE) :表示在源代码级别保留该注解,当生成字节码文件时,就不会保留该注解了

    @Retention(RetentionPolicy.CLASS) :表示在字节码文件中都保留这个注解,但是当加载到虚拟机里面运行的时候该注解不会保留

    @Retention(RetentionPolicy.RUNTIME):表示在运行时都会保留该注解

    3.@Documented :将此注解包含在生成的javadoc文档里面

    4.@Inherited :注解可以被继承  这方面我也不怎么懂,有关言语就不乱讲,以免误导,如果有哪位大牛对@Inherited了解的,麻烦请在评论区评论一二,在下感激不尽!

  • 相关阅读:
    找出数组中出现次数超过一半的数字(众数)
    消失的两个数字(1-N缺两个数)
    47. Permutations II
    137. Single Number II
    Go语言内存分配(详述 转)
    Go语言内存分配(简述 转)
    redis分布式锁
    Golang调度器GMP原理与调度全分析(转 侵 删)
    android framework navigationbar自定义
    android studio使用中遇到的问题
  • 原文地址:https://www.cnblogs.com/1998xujinren/p/11165212.html
Copyright © 2011-2022 走看看