1、注解
- 代码提供注释的作用。
- 对程序提供一些标识,可以提供数据(参数)。
- 可以在一些情况下代替配置文件,结构简单,使用简单,效率较高。
注解使用方式:@注解名(实参)。
位置:不同的注解使用位置可以不同,可以通过设置规定。
1.1注解分类
参数个数分类:
- 标记注解(没有参数)
- 单值注解(一个参数)
- 完整注解(多个参数)
作用分类:
- 内置注解
- 元注解:注解注解的注解
- 自定义注解
内置注解:
- @override 检查是否为重写方法
- @Deprecated 标识过时
- @SuppressWarnings 抑制警告
- @FunctionalInterface 检查是否为函数式接口
1.2元注解
元注解用来标识当下注解。
-
- @Target 控制直接的使用范围 -->ElementType 枚举类中
-
- @Retention 定义注解的声明周期(什么时期有效) -->RetentionPolicy 枚举类SOURCE->编译器检查语法时有效 …如果通过反射操作这个注解,必须是RUNTIME
-
- @Documented 表示使用该注解的元素应被javadoc或类似工具文档化显示
-
- @Inherited 标识这注解类型可以被继承
1.3自定义注解
自定义注解:
- 1.@interface定义注解
- 2.可以为注解类添加参数,无参方法的形式声明,但是不是方法
- 3.参数的数据类型可以为 基本数据类型,String,Class,enum,annotation类型或者以上类型的数组
- 4.参数的修饰符只能为public,default
- 5.属性可以设置默认值,通过default设置
- 6.如果只有一个参数,建议名字设置为value,使用的时候就可以直接赋值
2、正则表达式
作用:验证、查找、替换、分割 字符串。
2.1字符类
([]只能表示一个字符,不能表示多个,如[ab]表示ab中的一个而不是表示连起来的ab)
. 任意字符
[abc] a、b、c中的任意一个
[^abc] a、b、c之外的任意字符
[a-zA-Z] a到z或A到Z中的任意一个字符
[abc[hij]] 相当于[abchij]
[a-z&&[hij]] a-z与hij的交,hij中的一个
\s 空白(空格,tab,换行,换页,回车)
\S 非空白
\d 数字0-9
\D 非数字
\w 词字符[a-zA-Z0-9]
\W 非词字符
2.2.量词
? 0个或1个
+ 至少一个
* 0个或多个
X{n} 恰好n个X
X{n,} 至少n个X
X{n,m} n到m个X
2.3匹配模式
在匹配次数不定时如* {n,} +,匹配字符越多越好,默认模式即”贪婪模式。
- 贪婪模式 greedy(匹配字符越多越好,可回溯)
- ?懒惰模式 lazy reluctant (匹配字符越少越好,可回溯)
- +独占模式 possessive(匹配字符越多越好,不可回溯) 用的较少
3、XML
可扩展标记语言,xml是互联网数据传输的重要工具,它可以跨越互联网任何的平台,不受编程语言和操作系统的限制,可以说它是一个拥有互联网最高级别通行证的数据携带者。xml是当前处理结构化文档信息中相当给力的技术,xml有助于在服务器之间穿梭结构化数据,这使得开发人员更加得心应手的控制数据的存储和传输。
Xml用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。Xml是标准通用标记语言(SGML)的子集,非常适合Web传输。XML提供统一的方法来描述和交换独立于应用程序或供应商的结构化数据。