¿Cuál es la principal diferencia entre una clase interna y una clase anidada estática en Java? ¿El diseño / implementación juega un papel en la elección de uno de
En la programación orientada a objetos (OOP), una clase interna o una clase anidada es una clase declarada completamente dentro del cuerpo de otra clase o interfaz. Sin embargo, en Java, una clase interna es una clase anidada no estática.
¿Cuál es la principal diferencia entre una clase interna y una clase anidada estática en Java? ¿El diseño / implementación juega un papel en la elección de uno de
Estoy tratando de hacer un juego de Tetris y obtengo el error del compilador Shape is not an enclosing class cuando trato de crear un objeto public class Test { public static void main(String[] args) { Shape s = new Shapes.ZShape(); } } Estoy usando clases internas para cada forma. Aquí...
Estoy jugando con lambdas en Java 8 y me encontré con una advertencia local variables referenced from a lambda expression must be final or effectively final. Sé que cuando uso variables dentro de una clase anónima deben ser finales en la clase externa, pero aún así, ¿cuál es la diferencia entre...
He estado leyendo algunos artículos sobre pérdidas de memoria en Android y vi este interesante video de Google I / O sobre el tema . Aún así, no entiendo completamente el concepto, y especialmente cuando es seguro o peligroso para las clases internas del usuario dentro de una Actividad . Esto es...
Tengo el siguiente código: 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!"); } } Sé Thingque no hace nada, pero mi programa Hello, World se compila muy bien sin...
tengo el siguiente código. Quiero obtener el objeto de clase externa usando el cual creé el objeto de clase interna inner. ¿Cómo puedo hacerlo? public class OuterClass { public class InnerClass { private String name = "Peakit"; } public static void main(String[] args) { OuterClass outer =...
¿Alguien puede señalarme algunos buenos recursos para comprender y usar clases anidadas? Tengo algunos materiales como Principios de programación y cosas como este IBM Knowledge Center - Clases anidadas Pero todavía tengo problemas para entender su propósito. ¿Alguien podría ayudarme por...
Observé que las clases externas pueden acceder a las variables de instancia privada de las clases internas. ¿Cómo es esto posible? Aquí hay un código de muestra que demuestra lo mismo: class ABC{ class XYZ{ private int x=10; } public static void main(String... args){ ABC.XYZ xx = new...
¿Por qué no podemos tener un método estático en una clase interna no estática? Si hago que la clase interna sea estática, funciona. ¿Por
En Java, las clases anidadas pueden ser statico no. Si lo son static, no contienen una referencia al puntero de la instancia que lo contiene (ya no se llaman clases internas, se llaman clases anidadas). Olvidar hacer una clase anidada staticcuando no necesita esa referencia puede ocasionar...
Tengo el siguiente código: public class MyClass { class Inner { int s, e, p; } public static void main(String args[]) { Inner in; } } Hasta esta parte, el código está bien, pero no puedo crear instancias 'in' dentro del método principal in = new Inner()como se muestra non static field...
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"; Este error se produce cuando compilo con la clase Outer :: Inner 'no tiene un...
Estoy tratando de entender el alcance en clases anidadas en Python. Aquí está mi código de ejemplo: class OuterClass: outer_var = 1 class InnerClass: inner_var = outer_var La creación de la clase no se completa y aparece el error: <type 'exceptions.NameError'>: name 'outer_var' is not...
Estoy construyendo una clase de usuario para mi nuevo sitio web, sin embargo, esta vez estaba pensando en hacerlo un poco diferente ... C ++ , Java e incluso Ruby (y probablemente otros lenguajes de programación) están permitiendo el uso de clases anidadas / internas dentro de la clase principal,...
Estoy tratando de incluir JSON sin procesar dentro de un objeto Java cuando el objeto se (des) serializa usando Jackson. Para probar esta funcionalidad, escribí la siguiente prueba: public static class Pojo { public String foo; @JsonRawValue public String bar; } @Test public void test()...
Tengo una situación así ... 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 ¿Cómo puedo acceder al Outermétodo de la Innerclase desde la
¿Es posible crear una clase interna dentro de una interfaz? Si es posible, ¿por qué querríamos crear una clase interna como esa ya que no vamos a crear ningún objeto de interfaz? ¿Estas clases internas ayudan en algún proceso de
class OuterClass { class InnerClass { static int i = 100; // compile error static void f() { } // compile error } } Aunque no es posible acceder al campo estático con OuterClass.InnerClass.i, si quiero grabar algo que debería ser estático, por ejemplo, el número de objetos InnerClass...