ios: доступ к контроллеру навигации из приложения-делегата

Если вы объявили enum следующим образом:

enum Suit {SPADES, HEARTS, CLUBS, DIAMONDS}

Компилятор Java синтетически сгенерировал для вас следующий класс:

final class Suit extends java.lang.Enum {
  public static final Suit SPADES;
  public static final Suit HEARTS;
  public static final Suit CLUBS;
  public static final Suit DIAMONDS;
  private static final Suit[] $VALUES;
  public static Suit[] values();
  public static Suit valueOf(java.lang.String);
  private Suit();
}

Нет намерения создавать другие экземпляры этого класса, отличные от тех статических полей, которые уже определены в нем (как вы могли бы сделать вывод из его частного конструктора), но, что наиболее важно, и, как упоминалось в принятом ответе, внутренний класс не может иметь статические члены ( JLS §8.1 .3. Внутренние классы и экземпляры Enclosing Instances ), и поскольку класс синтетического enum делает это, он делает его неприемлемым как внутренний класс.

13
задан James Harpe 2 January 2013 в 19:36
поделиться