Вопросы по теме 'jls'

Почему Eclipse компилирует это, а javac — нет?
У нас есть несколько модульных тестов, которые отлично компилируются и работают в Eclipse 3.4, но когда мы пытаемся скомпилировать их с помощью javac, происходит сбой. Мне удалось сократить код до чего-то небольшого и автономного, поэтому он не имеет...
1532 просмотров
schedule 15.02.2023

Порядок выполнения параметров гарантирует в Java?
Учитывая следующий вызов функции в C : fooFunc( barFunc(), bazFunc() ); Порядок выполнения barFunc и BazFunc не указан, поэтому barFunc() может вызываться перед bazFunc() или bazFunc() перед barFunc() в C . Определяет ли...
13226 просмотров

Опечатки для спецификации языка Java, 3-е издание
Я широко использую JLS как в качестве учебного, так и обучающего ресурса, но я заметил, что в нем есть некоторые ошибки. Есть простые опечатки (например, JLS 5.1.4 "условия"), но есть и такие, которые я считаю довольно серьезными ошибками....
434 просмотров
schedule 08.05.2022

Приведение Java: неправильный ли компилятор, или неверная спецификация языка, или я ошибаюсь?
Я читал спецификацию языка Java, 3-е издание, и нашел то, что я считаю несоответствием между спецификацией и реализацией компилятора javac. Те же несоответствия существуют и в компиляторе Eclipse. Раздел 15.16 посвящен выражениям приведения...
956 просмотров
schedule 20.05.2024

Существует ли моби-версия спецификации языка Java?
Я не уверен, что это лучшее место для вопросов, но я думаю, что здесь самая высокая вероятность ответа (из-за темы). Кто-нибудь сталкивался с версией Java Language Specification для mobi (Amazon Kindle)? Я знаю, что могу читать PDF-файлы на...
1969 просмотров
schedule 29.05.2024

Есть ли инструмент для определения того, правильно ли синхронизирована программа, как определено в JLS?
Спецификация языка Java 7 (JLS7-17.4.5) определяет «правильно синхронизированную» программу следующим образом: «Программа правильно синхронизирована тогда и только тогда, когда все последовательно согласованные выполнения свободны от гонок данных»....
197 просмотров
schedule 29.04.2023

Спецификация языка Java: значение обозначения |S|
Я просматриваю JLS 7 , чтобы понять приведение типов Раздел 5.5.1 . В нем говорится: Учитывая ссылочный тип времени компиляции S (исходный) и ссылочный тип времени компиляции T (цель), существует преобразование приведения из S в T, если не...
276 просмотров
schedule 01.07.2023

Классы, вложенные в интерфейс
Почему можно определить внутренние (иначе нестатические вложенные ) классы в интерфейсе? Есть ли в этом смысл? Они не могут существовать внутри экземпляра содержащего интерфейса, потому что интерфейсы не могут быть созданы, поэтому......
73 просмотров
schedule 26.02.2022

Спецификация Java 7: идентификаторы переменных - это имена, а имена полей - нет? Почему?
http://docs.oracle.com/javase/specs/jls/se7/html/jls-6.html#jls-6.2 Спецификация говорит: При определении значения имени (§6.5) учитывается контекст, в котором это имя появляется. Правила §6.5 различают контексты, в которых имя должно...
164 просмотров
schedule 20.01.2024

Что такое определение во время работы виртуальной машины Java?
Из глава 6.3 JVMS : [...] любой из VirtualMachineError подклассов, определенных ниже [ InternalError , OutOfMemoryError , StackOverflowError , UnknownError ], может быть вызван в любое время во время работы виртуальной машины Java...
74 просмотров
schedule 16.01.2024

Как называется преобразование (параметризованный тип -> необработанный тип)
Согласно JLS преобразование типа (необработанный тип -> параметризованный тип) с именем Непроверенная конверсия . А как называется обратное преобразование (параметризованный тип -> необработанный тип)? ArrayList<String> arrStr = new...
48 просмотров
schedule 20.06.2023

Требует ли JLS встраивания конечных строковых констант?
Я столкнулся с проблемой при манипулировании некоторым байт-кодом, когда некоторая константа final String не была встроена компилятором java (Java 8), см. Пример ниже: public class MyTest { private static final String ENABLED = "Y";...
295 просмотров
schedule 03.11.2023

В чем разница между getVolatile и getAcquire?
В чем разница между getVolatile и getAcquire при использовании, например. Атомарное целое ? PS: они связаны с Источник синхронизируемого с краем называется выпуском, а пункт назначения — приобретением. из...
985 просмотров
schedule 22.10.2023

Несоответствие в реализации java.lang.Double (Oracle JDK 1.8)?
Я посмотрел на реализацию класса java.lang.Double . Значение NaN является указанным значением 0x7ff8000000000000L . В поле public static final double NaN установлено значение 0.0d / 0.0 , которое должно оцениваться как 0x7ff8000000000000L ,...
114 просмотров
schedule 27.12.2023

Может ли поток сначала получить объект через безопасную публикацию, а затем опубликовать его небезопасно?
Этот вопрос возник у меня после прочтения этого ответа . Пример кода: class Obj1 { int f1 = 0; } volatile Obj1 v1; Obj1 v2; Thread 1 | Thread 2 | Thread 3 ------------------------------------------------- var o = new Obj1(); |...
364 просмотров