Вопросы по теме 'jls'
Почему это превышает ограничение в 65 535 байт в конструкторах Java и статических инициализаторах?
Отказ от ответственности: я понимаю, что могу сгенерировать это во время выполнения в Java, это было необходимо для особого случая при тестировании производительности некоторого кода. Я нашел другой подход, так что теперь это просто любопытство, а...
9084 просмотров
schedule
23.05.2023
Какова связь между JLS, Java и связанными с ними технологиями?
Java — это язык, JRE — среда выполнения, а JDK — инструменты разработки? JLS — это спецификация, которая говорит, что JRE должна делать x, y, z, и поэтому делает Java тем, чем она является? Верны ли эти взгляды, и если нет, может ли кто-нибудь...
2261 просмотров
schedule
21.10.2022
Каковы формальные условия для того, чтобы параметр-шаблон в универсальном типе Java находился в его границах?
Как в случае с параметризованными типами в Java правила, проверяющие, находится ли параметр в пределах границ, работают точно для подстановочных знаков?
Учитывая такой класс:
class Foo<T extends Number> {}
Экспериментируя с тем,...
965 просмотров
schedule
19.10.2022
Java в операторе
В миллионный раз я хотел бы использовать оператор IN в Java, аналогичный оператору IN в SQL. Его можно было бы просто реализовать как синтаксический сахар компилятора. Так что это
if (value in (a, b, c)) {
}
else if (value in (d, e)) {
}...
5841 просмотров
schedule
21.05.2023
Если вы перезаписываете поле в подклассе класса, в подклассе есть два поля с одинаковым именем (и разным типом)?
У меня есть 3 класса:
public class Alpha {
public Number number;
}
public class Beta extends Alpha {
public String number;
}
public class Gama extends Beta {
public int number;
}
Почему следующий код компилируется? И почему...
51003 просмотров
schedule
24.08.2023
Семантика финальных полей в потоках
Это из JLS 17.5:
Модель использования полей final проста. Задайте последние поля для объекта в конструкторе этого объекта. Не пишите ссылку на создаваемый объект в месте, где другой поток может видеть его до того, как конструктор объекта...
811 просмотров
schedule
21.07.2022
Порядок выполнения статических блоков в типе Enum по отношению к конструктору
Это из эффективной Java:
// Implementing a fromString method on an enum type
private static final Map<String, Operation> stringToEnum
= new HashMap<String, Operation>();
static { // Initialize map from constant name to enum...
5179 просмотров
schedule
14.06.2023
О ссылке на объект до завершения конструктора объекта
Каждый из вас знает об этой особенности JMM , что иногда ссылка на объект может получить значение до завершения конструктора этого объекта.
В JLS7, стр. 17.5 заключительная семантика поля мы также можем прочитать:
Модель...
2419 просмотров
schedule
23.11.2022
Конструктор со списком аргументов нескольких типов в грамматике Java
грамматика Java из спецификации языка Java v7 определяет следующие правила грамматики для конструкторов:
Primary:
...
new Creator
...
Creator:
NonWildcardTypeArguments CreatedName ClassCreatorRest
CreatedName (...
282 просмотров
schedule
17.08.2022
Стирание выполняется по-разному для подписи метода и метода?
Я наткнулся на пример, который предполагает, что стирание выполняется по-разному в сигнатуре и методе, но я не знаю, почему и как. JLS §8.4.8.3 указывает:
Это ошибка времени компиляции, если объявление типа T имеет метод-член m1 и существует...
203 просмотров
schedule
18.04.2023
Является ли общедоступный статический окончательный избыточным для константы в интерфейсе Java?
Этот код:
interface Config {
int MAX_CONN = 20;
}
скомпилировал и работал как я ожидал. Похоже, это то же самое, что:
interface Config {
public static final int MAX_CONN = 20;
}
Является ли "общедоступный статический финал"...
31258 просмотров
schedule
27.06.2022
изменение конечных переменных посредством отражения, почему разница между статической и нестатической конечной переменной
Пожалуйста, обратитесь к приведенному ниже коду. Когда я запускаю код, я могу изменить значение конечной нестатической переменной. Но если я попытаюсь изменить значение конечной статической переменной, она выдаст java.lang.IllegalAccessException ....
7241 просмотров
schedule
22.03.2023
Почему класс не может расширить перечисление?
Мне интересно, почему на языке Java class не может расширять enum .
Я говорю не о enum , расширяющем enum (что невозможно сделать, поскольку в java нет множественного наследования, и что enum s неявно расширяют java.lang.Enum ), а о классе,...
3208 просмотров
schedule
22.07.2023
Все ли имена являются идентификаторами?
В спецификации языка Java 6.2 ссылка
Вот следующий пример кода:
class Test {
public static void main(String[] args) {
Class c = System.out.getClass();
System.out.println(c.toString().length() +...
110 просмотров
schedule
11.02.2024
Верно ли, что каждый внутренний класс требует внешнего экземпляра?
Термин внутренний класс обычно означает "вложенный класс, который требует внешнего экземпляра". Однако JLS заявляет следующее:
8.1.3. Внутренние классы и вложенные экземпляры
[...]
Внутренние классы включают локальные...
6518 просмотров
schedule
02.04.2022
Что означает наблюдаемость пакета в главе 7 JLS
Я изучаю спецификацию языка Java, и у меня есть проблема со значением "Observability of a Package" в JLS 7.4.3 — Наблюдаемость пакета :
Пакет является наблюдаемым тогда и только тогда, когда:
Единица компиляции, содержащая...
232 просмотров
schedule
26.07.2022
Где runtime Endianness определен в спецификации языка Java?
Кажется, что среда выполнения Java - это Big Endian, но я не могу найти ссылку на это, только для спецификации файла класса JVM.
Я ищу окончательное место в JLS (независимо от версии), в котором указано, что:
int value = 4096; // 0b0001 0000...
230 просмотров
schedule
08.06.2022
Java Bounded Generics: ошибка вывода типа? (Вызов метода, JLS 15.12.2.7)
Для следующего фрагмента кода:
import java.util.List;
public class Main {
interface Interface1<T> {}
interface Interface2<T> extends Interface1<T> {}
static class Bound {}
interface BoundedI1<T extends...
391 просмотров
schedule
01.01.2023
Каково точное значение контекста final-field-safe в JLS
Термин final-field-safe context часто используется в параграфе 17.5.3 JLS (последующая модификация конечных полей). Хотя, как можно понять из спецификации (если я здесь не прав, поправьте меня)
An implementation may provide a way to execute a...
431 просмотров
schedule
12.06.2022
Является ли хорошей практикой удаление функции вместо того, чтобы оставить ее с устаревшей аннотацией
Итак, у меня был долгий спор с некоторыми парнями, и они продолжали спорить о своих самодельных кодовых соглашениях. В соответствии с этим они сказали, что если есть метод, который вы при кодировании материала, по вашему мнению, следует устареть. Вы...
69 просмотров
schedule
24.04.2022