2016-03-08 5 views
0

Я сбит с толку с утверждением/с, который я часто читал:Как программное обеспечение работает другое программное обеспечение

программа Java, работает внутри (или на) виртуальной машины Java. У меня есть сомнение в том, как одна программа Java запускается другой программой, то есть JVM.

Как одно программное обеспечение может читать другое программное обеспечение?

Это может показаться очень тривиальным или бессмысленным, но чем больше я думаю об этом, тем больше сомнений я получаю «как одно программное обеспечение может запускать другое программное обеспечение».

Любая помощь, чтобы понять это, очень ценится.

+2

Программное обеспечение - это всего лишь байты в файле. JVM просто открывает файл, читает байты и, в зависимости от того, что говорят байты, он делает одно, а если байты чем-то отличаются, он делает что-то другое. –

+1

https://www.youtube.com/watch?v=GhEoCNEPdhY –

+0

Спасибо за ваши комментарии, он открыл двери для нового мышления. – CuriousMind

ответ

2

Уверенность, которая у меня есть, заключается в том, как одна программа Java запускается другой программой, то есть JVM.

JVM - это программа. Это

  • прочитайте файл класса, который содержит скомпилированный Java-класс.
  • имеет интерпретатор, который выполняет действия в байт-коде Java.

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

+0

Большое спасибо за ваш ответ, действительно, он открыл двери мышления. – CuriousMind

+1

@CuriousMind вы можете реализовать JVM в JVM. ;) –

Смежные вопросы