Java学习之注解篇

Java学习之注解篇0x00前言续上篇文章,这篇文章就来写一下注解的相关内容。0x01注解概述Java注解(Annotation)又称Java标注,是JDK5.0约会的一种注释机制。和J

大家好,又见面了,我是全栈君,祝每个程序员都可以多学几门语言。

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 结尾

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

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/119945.html原文链接:https://javaforall.net

(0)
上一篇 2021年12月12日 上午8:00
下一篇 2021年12月12日 上午9:00


相关推荐

  • Seedance 2.0之后,字节跳动又发布豆包大模型2.0

    Seedance 2.0之后,字节跳动又发布豆包大模型2.0

    2026年3月14日
    2
  • [Unity算法]斜抛运动[通俗易懂]

    [Unity算法]斜抛运动[通俗易懂]斜抛运动:1.物体以一定的初速度斜向射出去,物体所做的这类运动叫做斜抛运动。2.斜抛运动看成是作水平方向的匀速直线运动和竖直方向的竖直上抛运动的合运动。3.它的运动轨迹是抛物线。Oblique

    2022年8月5日
    7
  • Python入门教程!手把手教会你爬取网页数据

    Python入门教程!手把手教会你爬取网页数据其实在当今社会 网络上充斥着大量有用的数据 我们只需要耐心的观察 再加上一些技术手段 就可以获取到大量的有价值数据 这里的 技术手段 就是网络爬虫 今天就给大家分享一篇爬虫基础知识和入门教程 什么是爬虫 爬虫就是自动获取网页内容的程序 例如搜索引擎 Google Baidu 等 每天都运行着庞大的爬虫系统 从全世界的网站中爬虫数据 供用户检索时使用 爬虫流程其实把网络爬虫抽象开来看 它无外乎包含如下几个步骤模拟请求网页 模拟浏览器 打开目标网站 获取数据 打开网站之后 就可以自动化的

    2026年3月17日
    2
  • Git 常用命令详解(二)

    Git 常用命令详解(二)Git 是一个很强大的分布式版本管理工具 它不但适用于管理大型开源软件的源代码 如 linuxkernel 管理私人的文档和源代码也有很多优势 如 wsi lgame pro Git 的更多介绍 请参考我的上一篇博客 Git 版本管理工具一 Git 命令初识在正式介绍 Git 命令之前 先介绍一下 Git 的基本命令和操作 对 Git 命令有一个总体的认识示例 从 Git 版本库的初始化 通常有两种方式

    2026年3月16日
    2
  • 李林峰 netty_逆向工程权威指南

    李林峰 netty_逆向工程权威指南第1章Java的I/O演进之路第2章NIO入门2.3NIO编程第4章TCP粘包/拆包问题的解决之道4.1TCP粘包/拆包4.1.1TCP粘包/拆包问题说明4.1.2TCP粘包/拆包发生的原因 应用程序write写入的字节大小大于套接口发送缓冲区的大小 进行MSS大小的TCP分段 以太网的帧playload大小MTU进行IP分片…

    2026年4月15日
    7
  • gcc: error: CreateProcess: No such file or directory解决方案

    gcc: error: CreateProcess: No such file or directory解决方案半夜睡不着 研究 Python 的胶水效果 想用 gcc 进行编译源文件 遇到了上面的 bug 搞了蛮久的才搞定 在这做一下笔记 分享给可能需要的朋友们 接下来 我会展示整个经过 一开始 我进入到了 cmd 界面 到了我想要编译的文件的位置 我提前写好了源文件 看到上面那个文件中的 1 c 文件了吧 那个就是我先写好的代码文件 结果出乎意

    2026年3月18日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号