Preguntas etiquetadas con inner-classes

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.

366
No es una clase envolvente Java

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í...

351
Diferencia entre final y efectivamente final

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...

188
¿Por qué uno usaría clases anidadas en C ++?

¿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...

116
¿Alcance de las clases anidadas?

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...

111
Clase anidada o interna en PHP

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,...