Ссылка на статический объект вложенного класса из внешнего класса

1

Я хочу ссылаться на переменную объекта статического вложенного класса из внешнего класса. Будет ли это работать?

public class GuiApp {
    static class book{

        static book [] book = new book[1000];
        static Boolean overdue;
        static Boolean checkedOut;
        static int bookNum;
        static String personName;
        static String dueDate;
        static int month;
        static int date;
        static int year;
        static String dateCheckedOut;
    }
}

и позже ссылаться на переменную String personName книги [50] из внешнего класса, например

book.book[50].personName = "Bob";

Я не уверен, правильно ли понимаю это, поэтому я хочу знать, будет ли это работать.

  • 0
    Здесь нет внутреннего класса. Есть статический вложенный класс. Не то же самое.
  • 0
    Ваше имя класса должно начинаться с заглавной буквы и никогда не использовать одно и то же имя для двух вещей. Consdure измените имя переменной book на arrBook или books.
Теги:

1 ответ

1
Лучший ответ

Перед доступом к элементу этого массива:

book.book[50].personName = "Bob";

Вы должны инициализировать этот элемент:

book.book[50] = new GuiApp.book();

Я также советую не использовать одно и то же имя для класса и массива.

Однако создание всех свойств класса book static не имеет смысла, поскольку это означает, что все книги будут иметь одинаковые значения.

  • 0
    О, я просто вынул ключевое слово static, но теперь я не могу ссылаться на переменные и объекты книги во внешнем классе. W
  • 0
    @noobProgrammer Ну и массив book [] должен оставаться статическим. Вы должны переименовать эту переменную, хотя. Это может конфликтовать с именем класса.
Показать ещё 10 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню