J2SE находится в самой поддержке спецификации (см JSR270), но J2SE делает не включать определяющие правила для реализации виртуальной машины Java (JVM). Хотя JVM определяется specification, вы, вероятно, ссылаетесь на определение самого языка, которое определено в еще одной спецификации (JLS).
Что касается JVM, существует несколько реализаций (как у J2EE). This SO вопрос перечисляет несколько.
Назад к основному вопросу. Спецификация J2SE определяет набор базового набора служб поддержки, которые обычно используют приложения Java. Если вы посмотрите на это, спецификация в основном является индексом для других спецификаций, которые затем описывают каждую из этих технологий. Не путайте спецификацию (JSR) с эталонной реализацией, которая является фактической реализацией этой спецификации (это то, что вы загружаете из Oracle при получении пакета J2SE).
Просто, чтобы подвести итог:
- Спецификация, которая определяет язык Java: JSR 901
- Спецификация для виртуальной машины Java: JSR 924
- J2SE: JSR 270
IBM имеет JVM, хотя его трудно найти отдельно, его можно найти. Есть еще несколько человек. –
Я вижу, поэтому мои предположения в исходном вопросе правильные? – LuckyLuke
Да, это правильно –