URLClassLoader - Разница между getResource и findResource - PullRequest
0 голосов
/ 26 февраля 2019

URLClassLoader имеет две функции для получения ресурса в виде URL.Один из них называется getResource и наследуется, а другой - из URLClassLoader и называется findResource.Оба возвращают URL.Они выглядят очень похоже, в чем разница между ними?

Комментарий метода getResource: Находит ресурс с заданным именем.Ресурс - это некоторые данные (изображения, аудио, текст и т. Д.), К которым код класса может получить доступ независимо от местоположения кода.[продолжение]

комментарий метода findResource: Находит ресурс с указанным именем в пути поиска URL.

1 Ответ

0 голосов
/ 26 февраля 2019

Метод getResource использует стандартный подход иерархии загрузчиков классов: у ClassLoaders есть родители.Метод getResource попросит родителя загрузить его, и только если родитель не сможет найти запрошенный ресурс, он попытается загрузить его сам.

findResource с другой стороны, это ТОЛЬКО попытка загрузчика классовнайти ресурс;он вообще не запрашивает родителя.

Как правило, вы должны использовать getResource (и при необходимости будет использовать findResource).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...