Как именно работает URLClassLoader?Джава - PullRequest
1 голос
/ 03 октября 2011

Так что я знаю, как использовать URLClassLoader, и я знаю, что он делает, я хочу знать, как именно он это делает.

По сути, я спрашиваю: это живой эфир?Или он выполняет временную загрузку и читает классы локально?

Так что, если вы постоянно вызываете метод из класса, который загружаете с помощью URLClassLoader, и случайно потеряли Интернет, ваш java snip-it потерпит неудачу?

Или это единовременная загрузка и загрузка ее, и если вы потеряете Интернет, все будет в порядке, потому что она уже загружена в начале?

Любая информация была бы потрясающей, спасибо.

1 Ответ

0 голосов
/ 03 октября 2011

Нет. Загрузчик классов загружает и кэширует содержимое с URL-адреса и не выполняет повторное получение.

Все пользовательские реализации загрузчика классов должны работать через defineClass, что занимает byte[]. С этим API потоковая передача невозможна - у вас либо есть все байты для класса, либо нет.

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