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

    Java学习之注解篇

    0x00 前言

    续上篇文章,这篇文章就来写一下注解的相关内容。

    0x01 注解概述

    Java注解(Annotation)又称Java标注,是JDK5.0约会的一种注释机制。
    和Javadoc不同,Java标注可以通过反射获取标注内容。在编译器生成类文件时,标注可以被嵌入到字节码中。 Java虚拟机可以保留注释内容,在运行时可以获取到注释内容。当然它也支持自定义Java注释。

    它是JDK1.5及以后版本引入的一个特性,与类、接口、枚举是在同一个层次。它可以声明在包、类、字段、方法、局部变量、方法参数等的前面,用来对这些元素进行说明,注释。

    作用分类:
    ①编写文档:通过代码里标识的元数据生成文档【生成文档doc文档】
    ② 代码分析:通过代码里标识的元数据对代码进行分析【使用反射】
    ③编译检查:通过代码里标识的元数据让编译器能够实现基本的编译检查【Override】

    0x02 注解定义

    jdk自带注解

    * @Override	:检测被该注解标注的方法是否是继承自父类(接口)的
    	* @Deprecated:该注解标注的内容,表示已过时
    	* @SuppressWarnings:压制警告
    

    Deprecated注解:

    @Deprecated
        public void method1(){
            System.out.println("a");
        }
    

    被该注解修饰过后代表该方法已过时,调用时候会出现一条横线。

    字定义注解

    格式:

    		元注解
    		public @interface 注解名称{
    			属性列表;
    		}
    

    注解本质上就是一个接口,该接口默认继承Annotation接口。注解里面可以定义抽象方法。

    MyAnoin:

    package Domain;
    
    public @interface MyAnoin {
        int age();
        String name() default "zhangshan"; //默认值为zhangshan
        String[] strs();     //数组
    
    }
    

    shu:

    package Domain;
    @MyAnoin(age = 1,name = "lishi",strs={"abc","ii"})
    public class zhu {
    
    }
    
    

    0x03 结尾

    这篇文章内容并不多,本来应该是和上篇文章放一起的,想想还是分离开来的好。到时候也方便查找。

  • 相关阅读:
    mysql报错:java.sql.SQLException: The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone.
    MD5登陆密码的生成
    15. 3Sum、16. 3Sum Closest和18. 4Sum
    11. Container With Most Water
    8. String to Integer (atoi)
    6. ZigZag Conversion
    5. Longest Palindromic Substring
    几种非线性激活函数介绍
    AI初探1
    AI初探
  • 原文地址:https://www.cnblogs.com/nice0e3/p/13498308.html
Copyright © 2011-2022 走看看