学习java的第22tian

day22

反射

反射操作属性

字段 getDeclaredField(String name) 返回 字段对象,该对象反映此 类对象表示的类或接口的指定声明字段。 字段[] getDeclaredFields() 返回 字段对象的数组, 字段对象反映由此 类对象表示的类或接口声明的所有字段。 字段 getField(String name) 返回 字段对象,该对象反映此 类对象表示的类或接口的指定公共成员字段。 字段[] getFields() 返回一个包含 字段对象的数组, 字段对象反映此 类对象所表示的类或接口的所有可访问公共字段

反射操作方法

方法 getMethod(String name, 类<?>... parameterTypes) 返回 方法对象,该对象反映此 类对象表示的类或接口的指定公共成员方法。 方法[] getMethods() 返回一个包含 方法对象的数组, 方法对象反映此 类对象所表示的类或接口的所有公共方法,包括由类或接口声明的那些以及从超类和超接口继承的那些。 方法 getDeclaredMethod(String name, 类<?>... parameterTypes) 返回 方法对象,该对象反映此 类对象表示的类或接口的指定声明方法。 方法[] getDeclaredMethods() 返回一个包含 方法对象的数组, 方法对象反映此 类对象表示的类或接口的所有已声明方法,包括public,protected,default(package)访问和私有方法,但不包括继承的方法。

方法的调用

Object invoke(Object obj, Object... args) 执行当前方法对象 通过参数1调用(成员方法) 返回值:所调用执行方法的返回值

反射操作数组

创建数组 : static Object newInstance(类<?> componentType, int length) 创建具有指定组件类型和长度的新数组。

为数组赋值 : static void set(Object array, int index, Object value) 将指定数组对象的索引组件的值设置为指定的新值。

获取数组中的数据 : static Object get(Object array, int index) 返回指定数组对象中索引组件的值。

正则表达式

正则表达式是用来描述具有一定特征的字符串的特殊字符串。Regular Expression。

作用: 验证、查找、替换、分割 。

0211 正则.pdf

注解: 标注

在jdk5之后引入了注解机制

注释

标志|标识 注解可以配置参数信息 通过反射获取到配置的信息|获取到注解在程序中进行使用 可以存在与编译后的字节码文件中 代替配置文件存在 标注在包,类,字段,方法,参数...

使用: @注解名(配置数据) | @注解名

注解的分类:

JDK内置注解 @Override 标记一个方法为重写方法 @Deprecated 标记已经过时 @SuppressWarnings 抑制警告 参数的个数分类: 标记注解 单值注解 完整注解 元注解 注解注解的注解

@Target : 作用一个注解类在类中能够使用的位置 @Retention 用于描述注解的生命周期 @Documented 表示使用该注解的元素应被javadoc或类似工具文档化, @Inherited 标记一个注解类型能被子类继承

自定义注解

1.通过@interface自定义注解类型 2.默认隐式的实现了java.lang.annotation.Annotation 3.不能显示的实现其他接口或者继承其他父类 4.可以为注解类型添加字段, 数据类型 字段名(); 5.字段的数据类型 : 基本数据类型 String 枚举 注解 以上类型的数组 6.字段可以添加默认值 default 默认值 7.如果字段的个数只有一个,建议字段名定义为value,赋值的时候可以直接赋值,不需要字段名=字段值

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值