您的位置:首页 > 编程语言 > Java开发

Java高级5

2015-10-09 22:57 267 查看
正则表达式:符合一定规则的表达式

作用:用于专门操作的字符串。

特点:用于一些特定的符号来表示一些代码操作,这样就简化了书写。

好处:可以简化对字符串的复杂操作。

弊端:符号定义越多,正则越长,阅读性更差。

具体操作的功能:

1.匹配:String matches方法。用规则匹配整个字符串,只要有一处不符合规则,就匹配结束,返回false。

2.切割:String split()

3.替换

4.获取

正则表达式的第四个功能,获取:将字符串中的符合规则的子串取出。

操作步骤:

1.将正则表达式封装成对象。

2.让正则对象和要操作的字符串相关联。

3.关联后,获取正则匹配引擎。

4.通过引擎对符合规则的子串进行操作,比如取出。

到底用四种功能中的哪一个呢?

1.如果只想知道该字符串是否是错,使用匹配。

2.想要将已有的字符串变成另一个字符串,替换。

3.想要按照自定的方式将字符串变成多个字符串,切割,获取规则以外的子串。

4.想要拿到符合需要的字符串子串,获取,获取符合规则的子串。

反射的基石:Class类

1.Java程序中的各个Java类属于同一个事物,描述这类事物的Java类名就是Class。

2.Class类代表Java类,他的各个实例对象又分别对应什么?

对应各个类在内存中的字节码,例如,Person类的字节码,ArrayList字节码等等。

一个类被类加载器加载到内存中,占用一片内存空间,这个空间里面的内容就是累的字节码,不同的类的字节码是 不同的,所以他们在内存中的内容是不同的,这一个个的空间可分别用一个个的对象来表示,这些对象显然具有相同的类型。

3.如何得到各个字节码对应的实例对象(Class类型)

类名.class 例如:System.class

对象.getClass() 例如:new Data().getClass()

Class.forName("类名") 例如:Class.forName("java.util.Data")

4.九个预定义Class实例对象

int.class==Integer.TYPE

5.数组类型的Class实例对象

反射就是把Java类中的各个成分映射成相应的java类。

一个类中的每个成员都可以用相应的反射API类的一个实例对象来表示。

Constructor类代表某一个类中的一个构造方法:

1.得到某一个类所有的构造方法

2.得到某一个构造方法

3.创建实例对象

4.Class.newInstance()方法:该方法内部先得到默认的构造函数,然后用该构造方法创建实例对象。

Field类代表某一个类中的一个成员变量。

Method类代表某个类中的一个成员方法。

用反射方式执行某个类中的main方法。

数组的反射



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: