Почему файлы классов Java «обычно (но не обязательно)» хранятся в файле? - PullRequest
0 голосов
/ 07 марта 2012

На основе документации:

Скомпилированный код, который должен выполняться виртуальной машиной Java, представлен в двоичном формате, не зависящем от аппаратного обеспечения и операционной системы, обычно (но не обязательно), хранящемся в файле., известный как формат файла класса.

Как понимать эту строку: typically (but not necessarily).Что это значит?Я могу сохранить что-то вроде my file или hello file, или как?

Ответы [ 6 ]

4 голосов
/ 07 марта 2012

Это означает, что скомпилированные классы обычно хранятся в файлах, но в некоторых системах они могут храниться другим способом (не в файле).

Например, с базой данных Oracle можно писатьхранимые процедуры в Java.Эти хранимые процедуры будут скомпилированы, но не сохранены в файле класса;вместо этого скомпилированный класс хранится где-то в базе данных.

2 голосов
/ 07 марта 2012

Ну, это описание.Загрузчик классов может быть настроен на чтение классов из любого потока.Так что если это апплет .. это будет сетевой поток, а не файл

1 голос
/ 07 марта 2012

Он может жить в базе данных, а не в файле. (Oracle делает это.) Или, для действительно медленной JVM, сделайте татуировку на ноге хипстера.

Но обычно это файл, заканчивающийся на .class, возможно, заархивированный в банку.

1 голос
/ 07 марта 2012

Квалификация «обычно (но не обязательно)» означает, что скомпилированный код не имеет для хранения в файле, хотя обычно будет. Например: класс Java может быть скомпилирован, сохранен и выполнен исключительно в памяти.

1 голос
/ 07 марта 2012

Например, он может быть скомпилирован напрямую и выполнен из памяти.

0 голосов
/ 07 марта 2012

Код может быть в памяти вместо файла.Это будет в конечном итоге, после того, как переводчик загрузит его из файла.

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