Será que alguém pode me ajudar?

1) Quando criamos uma classe interna não-estática, há a restrição que todas as suas instâncias estarão ligadas a uma containing instance da classe externa e terão acesso direto a seus atributos. Como são as aplicações de classes internas e por que elas são facilitadas pelos fatos acima?

2) Se uma classe C estende uma classe interna E.I mas não tenha relação com a externa E, a construção de C é complicada, afinal alguém deve indicar a containing instance. A solução é deixar disponível ao construtor de C uma instância e de E, seja via parâmetro seja via atributo estático, e incluir como primeiro comando e.super ():

class E {
  class I {
  }
}
class C extends E.I {
  // solucao via parametro
  public C (E e) {
    e.super ();
  }
}
class T {
  public static void main (String a []) {
    E e = new E ();
    C c = new C (e);
    System.exit (0);
  }
}
Pessoalmente, considero toda essa técnica e sua resolução um mal bem pouco necessário. O que me dizem a respeito disso?
Preciso de uma opinião.
 
Obrigada.
 
Ana Lúcia Pegetti
Analista de Tecnologia da Informação
Carbocloro Indústrias Químicas S/A
TeL: 55 - 0XX13- 33613511 R:8268
 
 
 

Responder a