我有包裹:
com.google.*.*.*
可能有很多子包。
我有一堂课foo.java
如何检查它是否在主包内com.google
当我使用Class.getPackage()
时,它只提供这样的整个包:
com.google.util.domain.sup
我必须真的使用像 : 之类的功能吗substring() , split()
?还是有一种奇特的方法来检查它是否属于某些父包?
Java 中的包不是分层的。com.google.foo
与包无关com.google
。因此,如果您的目标是检查一个类是否在一个包中,或者它的“子包”之一中,那么是的,字符串操作是您最好的选择。
你的意思是像...
if (getClass().getName().startsWith("com.google."))
如果您需要完全匹配,您可以使用
if (getClass().getPackage().getName().equals("com.google.util.domain.sup"))