У меня очень простой, но сложный вопрос. Как реализовано программирование драйвера событий Java?
Я имею в виду, JVM сначала получает сообщение от ОС, а затем должен вызвать некоторый метод, реализованный, возможно, правильным компонентом GUI (например, JFrame, я полагаю). Но может ли это быть запрограммировано для программиста?
Я не знаю, как объяснить, что я лучше, чем какой-то пример:
У вас есть окно и кнопка. Пользователь нажимает эту кнопку. Теперь JVM получает от ОС, что был какой-то щелчок мышью и его координаты. Теперь JVM необходимо вызвать некоторый метод, который обрабатывает все остальное внутри вашего кода. Таким образом, должен быть момент, когда JVM (изначально написанный SW) вызывает соответствующую часть байт-кода вашего (моего) Java-приложения. То, что это вызывает соответствующий слушатель действия, но теперь это из вашего кода, я считаю.
Итак, в моем примере, есть ли в байт-коде Java какая-то таблица методов, вызываемая непосредственно JVM? Потому что я считаю, что если бы JVM искала правильные имена методов, это могло бы длиться вечно.
В Java мне сложно понять этот переход между JVm и Actall Code. Я пришел из ASM, а не из языков Си, и мне хотелось бы узнать, как это работает внутри Java. Потому что я знаю, как это работает на реальном HW. Надеюсь ты меня понял. Спасибо.