在调用getResource()之前,我是否需要在getClassLoader()上处理null

时间:2017-02-28 23:07:59

标签: java

我有一个名为MyClass的类,在类中我正在调用MyClass.class.getClassLoader().getResource("SCHEMA.xsd")。当我对此代码运行fortify扫描时,它会在调用MyClass.class.getClassLoader()之前抱怨我在getResource()处理null。我真的需要在这里处理null吗?在什么情况下getClassLoader()将返回null?

1 个答案:

答案 0 :(得分:2)

根据Javadoc

  

某些实现可能使用null来表示引导类加载器。如果此类由引导类加载器加载,则此方法将在此类实现中返回null。 [...]如果此对象表示基本类型或void,则返回null。

如果您不使用任何框架,您应该在大多数情况下保持安全。请参阅文档:https://docs.oracle.com/javase/7/docs/api/java/lang/Class.html#getClassLoader()

修改:更正了@mangotang的评论