Разделение на подклассы Внутреннего Класса от Внешнего Класса по сравнению с другим Внутренним Классом

Это - "плохая" идея. Это может быть медленно. Вы это не действительно хорошо для быстрого поиска с индексами также. Единственное реальное время, когда мы используем GUID или UniqueIDs, - когда мы должны связать элементы данных через базы данных, обычно когда у нас есть база данных сервера и локальная база данных для приложения (для разъединенных систем). У Вас действительно нет никакого другого способа держать вещи вместе кроме гуидов. Для индексов и первичных ключей, Вы хотите использовать целочисленное значение и попытку связать вещи с таблицами ассоциации вместо того, чтобы использовать гуиды повсеместно.

7
задан Andreas_D 27 August 2010 в 05:59
поделиться

3 ответа

Прежде всего: не делайте таких вещей. Это зло. На самом деле, Java 1.1 должна была быть определена гораздо более ограниченно, ИМО.

Существует путаница в отношении того, какой этот использовать из конструктора Foo.Fooey . Внешний this ( Foo.this ) будет работать. Но на самом деле this является Foo , но его нельзя передать в суперконструктор из-за правил использования this до того, как суперконструктор вернется (и помимо внешний экземпляр тот же экземпляр, что и внутренний экземпляр). Внешний this суперкласса « ((Bar) this) .this $ 0 » (IIRC) также недоступен из-за ограничений на использование this .

Решение: быть точным.

6
ответ дан 7 December 2019 в 03:18
поделиться

Ответ Тома Хотина правильный.

Также посмотрите java puzzler . Примерная глава содержит этот случай и несколько других «интересных» случаев, на которые вы, возможно, захотите взглянуть.

1
ответ дан 7 December 2019 в 03:18
поделиться
1
ответ дан 7 December 2019 в 03:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: