day16
class
1)获取一个类的所有信息(变量、方法、构造方法)
2)创建类对象newInstance()
Field
1)访问变量或给变量赋值
Method
1)执行具体类对象的指定方法
3.Method(获取方法对象)
Class c = Man.class;
Man man = new Man();
//Method m = c.detDeclareMethod("speak",null);
//m.invoke(man,null);
Method m = c.getDeclareMethod("speak",String.class,int.class);
m.invoke(man,"add",123);
正则表达式
验证字符串是否符合规则
检索符合规则的字符串
特殊字符(元字符)
文字(文本字符)
元字符
\d 0-9数字字符
\D 非数字字符
\n换行
\r回车
\s空白字符
\S非空白字符
\w 单词字符[A-Za-z0-9_]
\W非单词字符
任意字符 .
\ 将任意字符转译成普通字符
(|)多选结构 一个子表达式可以表示一段字符
?至多一次(非贪婪匹配)
*至少0次(贪婪)
+至少一次(贪婪)
{min,max } 至少min次,至多max次[min,max]
{n} 只能匹配n次
{n,}至少n次
^脱字符 匹配文章开始的位置
$ 匹配文章结束的位置
[]字符组,一个字符组匹配一个字符的位置,(任意一个字符 )
-连字符 范围,在开头则表示单纯-不表示范围
[^……]排除字符
[.]表示一个点号
[-]此时-就表示-
Java内存模型JMM
(Java Memory Model)
java虚拟机运行时数据区(JVM Runtime Data Area)
java8前 运行时数据区划分
1)程序计数器(行号)
2)Java虚拟机栈(基本数据类型,工程师创建)
3)本地方法栈(基本数据类型,JDK自带)
4)堆
5)方法区
程序计数器(Program Counter Register)
当前线程执行字节码的行号指示器
执行方法,记录正在执行的虚拟机字节码指令的地址,执行本地方法,计数器为空
没有规定任何内存溢出情况的区域