Perdón por el título incorrecto, pero no se me ocurrió una mejor.Dos preguntas sobre clases internas en Java (clase A {clase B {}})
estoy teniendo una clase A y de clase B, que es una especie de subclase de A, así:?
(¿Existe en realidad un nombre correcto porque no es "subclase" reservados para la herencia?)
class A {
int i = 0;
class B {
int j = 1;
}
}
class Test {
public static void main() {
A a = new A();
B b = a.new B();
A c = ??? b ??? // get "a" back
}
}
de B se puede acceder a todas las propiedades de a, por lo tanto, tanto, ai y bi, regresan 0. Ahora, me pregunto si se trata de alguna manera posible para recuperar el objeto original de tipo a a cabo de b, ya que b contiene todo lo que a contiene? El simple casting aparentemente no funciona.
segunda:
class A {
void print() {
System.out.println("This is class A.");
}
class B {
void print() {
// <--- How to access print() of class A (like this.A.print() or smth)?
System.out.println("This is class B.");
}
}
}
Usted podría, alternativamente, también me dan algunos buenos recursos sobre este tema, ya que he estado demasiado estúpidos para encontrar uno bueno hasta ahora.
Gracias de antemano. :)
El nombre correcto es clase interna, creo. – tvanfosson
Creo que este es un duplicado de esta pregunta (http://stackoverflow.com/questions/309737/how-to-refer-to-the-outer-class-in-another-instance-of-a-non- static-inner-class) –
Gracias Dan, esto me ayudó mucho!:) – balu