Вопросы с тегом «inner-classes»

В объектно-ориентированном программировании (ООП) внутренний класс или вложенный класс - это класс, полностью объявленный в теле другого класса или интерфейса. Однако в Java внутренний класс - это нестатический вложенный класс.

366
Не является включающим классом Java

Я пытаюсь сделать игру Tetris, и я получаю ошибку компилятора Shape is not an enclosing class когда я пытаюсь создать объект public class Test { public static void main(String[] args) { Shape s = new Shapes.ZShape(); } } Я использую внутренние классы для каждой фигуры. Вот часть моего кода public...

351
Разница между окончательным и фактически окончательным

Я играю с лямбдами в Java 8, и я столкнулся с предупреждением local variables referenced from a lambda expression must be final or effectively final. Я знаю, что когда я использую переменные внутри анонимного класса, они должны быть финальными во внешнем классе, но все же - в чем разница между...

324
Когда именно утечка безопасна для использования (анонимных) внутренних классов?

Я читал некоторые статьи об утечках памяти в Android и смотрел это интересное видео из Google I / O на эту тему . Тем не менее, я не до конца понимаю концепцию, особенно когда она безопасна или опасна для внутренних классов пользователей внутри Activity . Вот что я понял: Утечка памяти произойдет,...

314
Java - нет включающего экземпляра типа Foo

У меня есть следующий код: class Hello { class Thing { public int size; Thing() { size = 0; } } public static void main(String[] args) { Thing thing1 = new Thing(); System.out.println("Hello, World!"); } } Я знаю Thing, ничего не делает, но моя программа Hello, World прекрасно компилируется без...

245
Получение внешнего объекта класса от внутреннего объекта класса

У меня есть следующий код. Я хочу заполучить внешний объект класса, используя который я создал внутренний объект класса inner. Как мне это сделать? public class OuterClass { public class InnerClass { private String name = "Peakit"; } public static void main(String[] args) { OuterClass outer = new...

188
Зачем использовать вложенные классы в C ++?

Может кто-нибудь указать мне на хорошие ресурсы для понимания и использования вложенных классов? У меня есть некоторые материалы, такие как Принципы программирования и такие вещи, как этот Центр знаний IBM - Вложенные классы Но мне все еще трудно понять их цель. Может ли кто-нибудь помочь...

177
Почему внешние классы Java могут обращаться к закрытым членам внутреннего класса?

Я заметил, что Внешние классы могут обращаться к внутренним классам частных переменных экземпляра. Как это возможно? Вот пример кода, демонстрирующий то же самое: class ABC{ class XYZ{ private int x=10; } public static void main(String... args){ ABC.XYZ xx = new ABC().new XYZ();...

123
Можно ли сделать анонимные внутренние классы в Java статическими?

В Java вложенные классы могут быть либо, staticлибо нет. Если да static, то они не содержат ссылки на указатель содержащего экземпляра (они также больше не называются внутренними классами, они называются вложенными классами). Если вы забудете создать вложенный класс, staticкогда ему не нужна эта...

122
Как создать экземпляр нестатического внутреннего класса в статическом методе?

У меня есть следующий фрагмент кода: public class MyClass { class Inner { int s, e, p; } public static void main(String args[]) { Inner in; } } До этой части код в порядке, но я не могу создать экземпляр «in» в основном методе, in = new Inner()как показано на рисунке non static field cannot be...

117
Могут ли внутренние классы получить доступ к частным переменным?

class Outer { class Inner { public: Inner() {} void func() ; }; private: static const char* const MYCONST; int var; }; void Outer::Inner::func() { var = 1; } const char* const Outer::MYCONST = "myconst"; Эта ошибка возникает, когда я компилирую с классом Outer :: Inner 'не имеет члена с именем...

116
Объем вложенных классов?

Я пытаюсь понять объем вложенных классов в Python. Вот мой пример кода: class OuterClass: outer_var = 1 class InnerClass: inner_var = outer_var Создание класса не завершено, и я получаю сообщение об ошибке: <type 'exceptions.NameError'>: name 'outer_var' is not defined Попытки inner_var =...

111
Вложенный или внутренний класс в PHP

Я создаю класс пользователя для своего нового веб-сайта, однако на этот раз я подумал о том, чтобы создать его немного по-другому ... C ++ , Java и даже Ruby (и, возможно, другие языки программирования) позволяют использовать вложенные / внутренние классы внутри основного класса, что позволяет нам...

103
Как я могу включить необработанный JSON в объект с помощью Джексона?

Я пытаюсь включить необработанный JSON в объект Java, когда объект (де) сериализуется с помощью Джексона. Чтобы проверить эту функциональность, я написал следующий тест: public static class Pojo { public String foo; @JsonRawValue public String bar; } @Test public void test() throws...

97
Внутренний класс в интерфейсе

Можно ли создать внутренний класс в интерфейсе? Если это возможно, зачем нам создавать такой внутренний класс, если мы не собираемся создавать какие-либо объекты интерфейса? Помогают ли эти внутренние классы в любом процессе разработки?...

85
Почему Java запрещает статические поля во внутренних классах?

class OuterClass { class InnerClass { static int i = 100; // compile error static void f() { } // compile error } } Хотя невозможно получить доступ к статическому полю с помощью OuterClass.InnerClass.i, если я хочу записать что-то, что должно быть статическим, например, количество созданных...