Как мы можем использовать динамически типизированный язык поверх JVM?

У нас есть Jython, JRuby, Groovy, которые динамически типизированы и работают поверх JVM. Я понимаю, что эти языки компилируются в байт-код.

Другие языки, такие как Scala, поддерживают вывод типов, и ясно, что компилятор выводит тип за нас.

Но Java— это статический язык, и он компилируется в байт-код. Значит ли это, что байт-код поддерживает динамическую типизацию?

Например,. В Javaнам нужно объявить тип переменной во время компиляции, и мы никогда не сможем его изменить. Но в случае Pythonнам не нужно объявлять тип, но мы можем присвоить любой тип значения одной и той же переменной во время выполнения.

Как динамическая типизация работает со статическим языком?

11
задан 18bytes 10 July 2012 в 05:58
поделиться