Clase interna detallada de Java
Una clase interna es una clase que define una clase en otra clase y se llama clase interna. Las clases internas se pueden dividir en clases internas con nombre y clases internas anónimas . Como su nombre lo indica, las clases internas famosas tienen sus propios nombres de clase, y las clases internas anónimas no tienen nombres de clase.
Clase interna famosa
public class Body{
//有名内部类
class Heart{
public void work() {
System.out.println("心脏在跳动");
}
}
{
//调用内部类方法1,new前面隐藏关键字this,代指body
Heart heart = new Heart();
}
public static void main(String[] args) {
Body body = new Body();
//调用内部类方法2,必须指明哪个类调用的
Heart heart = body.new Heart();
heart.work();
}
}
Clase interna anónima: utilizada principalmente para reescribir
public class Body{
//匿名内部类
static Mammal mammal = new Mammal(){
@Override
public void move() {//重写Mammal中的move方法
System.out.println("鲸鱼在游动");
}
};
public static void main(String[] args) {
mammal.move();
}
}
Nota :
- Después de que los archivos de clase compilados en ordinarios nombre de la clase .class
- Después de la famosa clase interna archivos compilados para el nombre de la clase en el interior el nombre de clase $ .class
- Después de una clase interna anónima archivos compilados para el nombre de la clase valor $ .class