记录两个java中使用容易出错的问题

  刚刚突然想到自己曾经遇到的两个错误,防不胜防的那种错误,本来早该记录一下一直拖到现在。

  第一个:是关于正则表达式的:

    java的正则表达式的主要的类: Pattern,它有两个比较容易出错的方法。 matches() 与 match()。  matches默认是全匹配。 也就是将整个待解析的文本串当成一个整体。  当且仅当整个文本串符合一个规则时,才能被解析。 尽管你在正则表达式中指定非贪婪匹配,仍然得不到想要的结果。 需极其注意。   

    替换的方法就是使用match()方法。  它匹配的更松散。 我们可以指定自己的规则去决定是否时贪婪匹配。 

第二个:是关于反射的。 

     我们知道java提供了面向对象元编程的能力,也就是反射。 它极大的扩充了java的灵活性。  通过反射我们可以获得一个类中所定义的成员变量与方法。 就拿获得方法来说,我们可以设置方法,setAccessable(true)来访问私有的成员方法!  问题就出在这里!!  要注意反射提供了两个类似的方法: getDeclareMethod(String)  ,以及 getMethod(String)。 属性类似。 特别要注意的是,唯有getDeclareMethod()方法才可以打破私有的限制,getMethod()是不行的!

猜你喜欢

转载自blog.csdn.net/qq_36285943/article/details/84036645