В чем основное различие между внутренним классом и статическим вложенным классом в Java? Играет ли дизайн / реализация роль в выборе одного из
В объектно-ориентированном программировании (ООП) внутренний класс или вложенный класс - это класс, полностью объявленный в теле другого класса или интерфейса. Однако в Java внутренний класс - это нестатический вложенный класс.
В чем основное различие между внутренним классом и статическим вложенным классом в Java? Играет ли дизайн / реализация роль в выборе одного из
Я пытаюсь сделать игру Tetris, и я получаю ошибку компилятора Shape is not an enclosing class когда я пытаюсь создать объект public class Test { public static void main(String[] args) { Shape s = new Shapes.ZShape(); } } Я использую внутренние классы для каждой фигуры. Вот часть моего кода public...
Я играю с лямбдами в Java 8, и я столкнулся с предупреждением local variables referenced from a lambda expression must be final or effectively final. Я знаю, что когда я использую переменные внутри анонимного класса, они должны быть финальными во внешнем классе, но все же - в чем разница между...
Я читал некоторые статьи об утечках памяти в Android и смотрел это интересное видео из Google I / O на эту тему . Тем не менее, я не до конца понимаю концепцию, особенно когда она безопасна или опасна для внутренних классов пользователей внутри Activity . Вот что я понял: Утечка памяти произойдет,...
У меня есть следующий код: 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 прекрасно компилируется без...
У меня есть следующий код. Я хочу заполучить внешний объект класса, используя который я создал внутренний объект класса inner. Как мне это сделать? public class OuterClass { public class InnerClass { private String name = "Peakit"; } public static void main(String[] args) { OuterClass outer = new...
Может кто-нибудь указать мне на хорошие ресурсы для понимания и использования вложенных классов? У меня есть некоторые материалы, такие как Принципы программирования и такие вещи, как этот Центр знаний IBM - Вложенные классы Но мне все еще трудно понять их цель. Может ли кто-нибудь помочь...
Я заметил, что Внешние классы могут обращаться к внутренним классам частных переменных экземпляра. Как это возможно? Вот пример кода, демонстрирующий то же самое: class ABC{ class XYZ{ private int x=10; } public static void main(String... args){ ABC.XYZ xx = new ABC().new XYZ();...
Почему у нас не может быть статического метода в нестатическом внутреннем классе? Если я сделаю внутренний класс статическим, он будет работать.
В Java вложенные классы могут быть либо, staticлибо нет. Если да static, то они не содержат ссылки на указатель содержащего экземпляра (они также больше не называются внутренними классами, они называются вложенными классами). Если вы забудете создать вложенный класс, staticкогда ему не нужна эта...
У меня есть следующий фрагмент кода: 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...
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 'не имеет члена с именем...
Я пытаюсь понять объем вложенных классов в Python. Вот мой пример кода: class OuterClass: outer_var = 1 class InnerClass: inner_var = outer_var Создание класса не завершено, и я получаю сообщение об ошибке: <type 'exceptions.NameError'>: name 'outer_var' is not defined Попытки inner_var =...
Я создаю класс пользователя для своего нового веб-сайта, однако на этот раз я подумал о том, чтобы создать его немного по-другому ... C ++ , Java и даже Ruby (и, возможно, другие языки программирования) позволяют использовать вложенные / внутренние классы внутри основного класса, что позволяет нам...
Я пытаюсь включить необработанный JSON в объект Java, когда объект (де) сериализуется с помощью Джексона. Чтобы проверить эту функциональность, я написал следующий тест: public static class Pojo { public String foo; @JsonRawValue public String bar; } @Test public void test() throws...
У меня такая ситуация ... class Outer(object): def some_method(self): # do something class Inner(object): def __init__(self): self.Outer.some_method() # <-- this is the line in question Как я могу получить доступ к Outerметоду Innerкласса из класса?...
Можно ли создать внутренний класс в интерфейсе? Если это возможно, зачем нам создавать такой внутренний класс, если мы не собираемся создавать какие-либо объекты интерфейса? Помогают ли эти внутренние классы в любом процессе разработки?...
class OuterClass { class InnerClass { static int i = 100; // compile error static void f() { } // compile error } } Хотя невозможно получить доступ к статическому полю с помощью OuterClass.InnerClass.i, если я хочу записать что-то, что должно быть статическим, например, количество созданных...