29. Los miembros de la clase de ----- clases internas orientadas a objetos

  En Java, permite la definición de una clase se encuentra dentro de otra clase, el primero se llama de tipo interno, que se llama una clase externa.

1. La clasificación clase interna

Los miembros de la clase interna (estáticos y no estáticos) y una clase local interior (el método, el bloque de código, el constructor)

2. Los miembros de la clase interna para comprender

Por una parte, como miembro de la clase externa:

   > Llamada una estructura de clase externo
   > puede ser modificación estática
   > pueden ser modificados en cuatro permisos diferentes

Por otra parte, como una clase:

   > Clase define las propiedades, métodos y otros constructores
   > modificación final se puede expresar de este tipo puede no ser heredada. La implicación, no utilice final, que puede ser hereditaria
   > abstracta puede ser modificado

características:

  • Todas las propiedades y métodos miembros de la clase miembros dentro de acceso incondicional a la clase externa no es privado e influencia estática
  • Cuando los miembros de la propiedad o método con el mismo nombre dentro de la clase y fuera de la clase, se produce fenómeno oculto. Llamar directamente dentro de la clase es una propiedades de miembro y métodos dentro de la clase. Necesidad miembro de .this "clase externa". Variable miembro / método
  • Si necesita acceder a la clase interna de la clase externa, que necesita para generar los objetos internos, a objeto de la clase interna de acceso.
  • Los miembros de la clase interna se une a la existencia de la clase externa, si necesita acceder a los miembros internos de la clase, a continuación, es necesario crear una clase externa.
  • A medida que los miembros de la existencia de la clase interna que los miembros de la clase externa, por lo que la clase puede ser modificado usando modificador de protección pública privada modificados ninguna autoridad para representar el problema del acceso a la interna. La lata interna y externa no.

pública  clase de prueba {
     públicas  estáticas  void main (String [] args) {
         // crear un miembro estático dentro del objeto de clase 
        Person.Inner2 Inner2 = nueva nueva Person.Inner2 (); 

        // Crear un miembro no estática dentro de la clase de objeto 
        Persona p = nuevo nuevo la Persona (); 
        Person.Inner1 inner1 = P. nuevo nuevo inner1 (); 
        inner1.show (); // name = Zhang, edad = 23 es 
        inner2.show (); // miembro estático de la clase interna 
    } 
} 

clase la Persona { 
    String nombre; 
    int Edad; 

    // miembro de clase interna no estática 
    clase{Inner1
         pública  vacío Show () { 
            nombre = "Sally" ; 
            Edad = 23 es ; 
            System.out.println ( "name =" + nombre + "Edad =" + Edad); 
        } 
    } 

    // miembro estático de la clase interna 
    estática  clase Inner2 {
         público  vacío Show () { 
            System.out.println ( "miembro de la clase interna estática" ); 
        } 
    } 

    pública  vacío comer () { 
        System.out.println ( "comer" ); 
    } 
}

3. Cómo llamar a una estructura externa de los miembros de la clase dentro de la clase?

clase de la Persona { 
    String name = "Bob" ;
 pública  vacío EAT () { 
} 
// elemento interno de clase no estática 
    clase Aves { 
        String name = "Rododendro" ;
         pública  sin efecto la pantalla (String nombre) { 
            System.out.println (nombre) ; // proceso en forma de parámetros de 
            System.out.println ( el este .name); // atributo clase interna 
            System.out.println (la persona. el este .name); // atributo de clase exterior
         // Person.this.eat (); 
        } 
    } 
}

4. clase interna local

características:

  • No se puede utilizar palabras clave modificador de acceso
  • intervalo de acción local en tan sólo declaró

 

 Las clases internas anónimas

características:

  • Clases internas anónimas no pueden utilizar el modificador static y los derechos
  • Anónimo constructor sin interno. Mediante la generación de una nueva referencia de objeto a XXX.
  • Clases internas anónimas que pertenecen a una clase interna local, todas las condiciones locales dentro similarmente restringidas interior siguen siendo válidas anónima

 

 

 

 

Autor: la belleza de Java

Fecha: 03/30/2020

Supongo que te gusta

Origin www.cnblogs.com/897463196-a/p/12596162.html
Recomendado
Clasificación