复习
- interface
- 在Java中,如果需要定义某一个模块的结构,那么此时一般使用接口
- 类通过implements关键字实现接口。当类实现接口之后,需要覆盖其中的抽象方法
- 类和类之间是单继承,类和接口之间是多实现,接口和接口之间是多继承
- 如果一个接口中只有一个抽象方法,那么可以考虑使用Lambda表达式来实现
- 包
- 通过package语句来定义包,利用包来对类进行区分
- 使用某一个包中的类的时候需要通过import关键字来导入包
- java.lang是Java中的核心包。当Java程序启动的时候,会自动的将java.lang包下的类导入到内存中
- 垃圾分代回收机制
- 堆内存分为Young和Old。Young分为Eden和Survivor
- 垃圾分代回收机制实际上就是GC对于不同分区的扫描
- Object
- Java中的顶级父类 - Java中所有的类都默认继承了这个类
- 注意其中的方法:equals、hashCode、toString和getClass
String
- String是Java中用于代表字符串的类,本身是一个最终类,不可被继承
- 字符串底层是依靠字符数组来存储
- 字符串在进行+拼接的时候,底层实际上依靠的是StringBuilder来完成。如果需要进行大量字符串拼接,建议使用StringBuilder
- 正则表达式(Regex - Regular Expression):需要按照规则来指定条件,利用这个条件来对字符串来进行判断或者校验
符号 | 解释 |
[] | 匹配[]中的任意一个字符 |
. | 任意字符 |
[^] | 除了[]以外的字符 |
{n} | 表示字符要出现n次 |
+ | 至少一次 >=1 |
* | 可有可无 >=0 |
? | 至多一次 <=1 |
{n,} | 至少n次 |
{n,m} | n~m次 |
\d | 数字 |
\D | 非数字 |
- 练习:输入一个字符串表示密码,校验规则
- 密码长度:8~12位
- 密码要求至少由大写、小写、数字以及符号(@# 或者空格)中的三种组成