注解和反射

本文介绍了Java中的注解和反射机制。注解用于给程序添加元数据,分为内置注解如@Override和@Deprecated,以及自定义注解,可以通过元注解如@Target和@Retention进行定制。反射则允许程序在运行时检查和修改其结构,包括操作泛型和注解。虽然反射提供强大的功能,如动态加载类和打破访问限制,但其效率相对较慢。
摘要由CSDN通过智能技术生成

注解入门

两点作用:

  • 对程序作出解释
  • 可以被其他程序(比如编译器等)读取

内置注解

1.@Override
在这里插入图片描述

2.@Deprecated
在这里插入图片描述

自定义注解,元注解

  • 元注解的作用就是注解其他注解。Java中定义了4个标准的meta-annotation类型,他们被用来提供对其他annotation类型作说明。
  • @Target :就是划定范围,指定被描述的注解 可以用在什么地方
  • @Retention:表示需要在什么级别保存该注释信息,用于描述注解的生命周期(source < class < runtime),一般定义runtime。
  • @Document : 说明该注解将被包含在javadoc中
  • @Inherited : 说明子类可以继承父类中的该注解

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

反射

  • 动态语言

在运行时代码可以根据某些条件改变自身结构。比如Python

  • 静态语言

运行时结构不可变的语言。比如Java、C、C++。

在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

类的加载过程

在这里插入图片描述在这里插入图片描述

类加载器

在这里插入图片描述

有了Class对象,能做什么?

在这里插入图片描述甚至在单例模式中,可以通过反射操作私有属性,打破了访问权限

在这里插入图片描述
但是,反射的方式也有缺点,就是速度。
在这里插入图片描述

反射操作泛型

在这里插入图片描述

反射操作注解

练习:orm
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值