首页 > 其他分享 >注解和反射

注解和反射

时间:2023-01-12 18:01:10浏览次数:25  
标签:反射 语言 实例 注解 class 加载

注解和反射
注解:
1.内置注解:Annotation注解,Override重写方法,Deprecated已经过时,SupperssWarnings正压警告
2.元注解:负责注解其他注解 Target 表示我们的注解可以用在那些地方;
Retention 表示我们的注解在什么地方还有效 runtime>class>sources
Documented表示是否将我们的注解生成在JAVAdoc(java文件中)
Inherited 子类可以继承父类的注解

反射:
1Reflection(反射)是JAVA被视为动态语言的关键,动态语言:程序运行的时候可以改变他的结构
2.静态语言JAVA,C,C++,动态语言:JS等
3.正常方式:引入需要的包类->通过new实例化->取得实例化对象
反射方式:实例化对象->getClass()方法->得到完整的包类名称

哪些类型有class对象
class;interface;数组;枚举enum;注解annotation;基本数据类型;void

类的加载与ClassLoader的理解
1.加载:
将class文件字节码内存加载到内存,
并将这些静态数据转换成方法区的运行时数据结构,
然后生成一个代表这个类的java.lang.Class对象
2.连接
3.初始化

补充,1泛型,2枚举

标签:反射,语言,实例,注解,class,加载
From: https://www.cnblogs.com/JK02/p/17047406.html

相关文章

  • 注解@EnableAsync使用注意项
    注解@EnableAsync使用注意项以异步性能优化为目的,反而带来的整体业务不可用的结果,是不可取的一种优化。SpringBoot默认用于异步任务的配置参数其中两项如下:queueCapaci......
  • @Data注解使用/注解getset不起作用
    讲个小工具Idea创建对象时不用写getset方法导入maven坐标<dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency......
  • 避免重复提交注解
    避免重复提交注解 ①注解@Target(ElementType.METHOD)@Retention(RetentionPolicy.RUNTIME)public@interfaceAvoidRepeatableCommit{/***指定时间内......
  • 【Spring注解】1.@Configuration&@Bean
    @Configuration&@Bean微信公众号:​​程序yuan​​如果需要spring注解视频,请到公众号评论留言。源码,视频全部奉上!当前springboot真是老火了,所以非让自己学一把,但是学了前面......
  • java高级--反射(reflect)
    1.获取Class对象的几种方式/***获取Class对象的三种方式*1Object——>getClass();*2任何数据类型(包括基本数据类型)都有一个“静态”的class属性*3通过Class类......
  • 注解与反射
    注解与反射1内置注解packagecom.feng.annotation;importjava.util.ArrayList;importjava.util.List;/***@Authorfengpeng*@Date2022/12/29*@Time2......
  • 反射机制
    反射机制反射机制概述反射机制的作用:通过反射机制可以操作字节码文件(可以读和修改字节码文件。通过反射机制可以操作代码片段(class文件)反射机制在哪个包下面:jav......
  • Go语言核心知识回顾(反射)
    有时要求写一个函数有能力统一处理各种值类型的函数,而这些类型可能无法共享同一个接口,也可能布局未知,也有可能这个类型在设计函数时并不存在,当我们无法透视一个未知类型的......
  • C# 反射机制
    反射?就是创建对象A时,顺便把对象A的字段,函数等信息以对象的形式封装到Bs中,添加一个字符串到对象Bs的映射关系到map中,顺带封装一堆方法到Bs中,可以通过Bs创建A对象,得到A中的......
  • Lombok中@Builder和@SuperBuilder注解的用法
    @Builder是lombok中的注解。可以使用builder()构造的Person.PersonBuilder对象进行链式调用,给所有属性依次赋值。Personperson1=Person.builder()......