Это просто дает входной поток файла, который находится в jar-файле ...
Неверно.Не все загрузчики классов загружают ресурсы из обычного файла JAR.
- Некоторые загрузчики классов загружаются из каталогов.
- Некоторые загрузчики классов загружаются из сети.
- Некоторые загрузчики классов загружаются из нескольких источников.
Вся эта сложность скрыта от вас, когда в этом случае вы используете ClassLoader
API через Class
.
... и нетсвязь с классом.
Неверно.Смотрите ответ @Jon Skeet.Обратите внимание, что вызов Class.getResourceAsStream(String)
дает ресурс, который принадлежит тому же контексту безопасности, что и класс.Это может быть очень важно, если используется несколько загрузчиков классов / контекстов безопасности.