day16 正则表达式 & 反射 & Java内存模型(JMM)

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)

当前线程执行字节码的行号指示器

执行方法,记录正在执行的虚拟机字节码指令的地址,执行本地方法,计数器为空

没有规定任何内存溢出情况的区域

虚拟机栈

本地方法栈

详情见day17文件

posted @ 2022-10-24 08:37  小彤在努力  阅读(52)  评论(0)    收藏  举报