【Java】内部类的概念与分类

内部类的概念与分类

 

如果一个事物的内部包含另一个事物,那么这就是一个类的内部包含另一个类。

eg:身体和心脏的关系,汽车和发动机的关系。

 

分类:

1.成员内部类

2.局部内部类(包含匿名内部类)

 

成员内部类的定义格式

修饰符 class 类名称{

 

   修饰符 class 类名称{

   //...

  }

 

}

注意:内用外,随意访问;外用内,需要内部类对象

 

如何使用内院内部类?有两种方式:

1.间接方式:在外部类的方法中,使用内部类;然后在main里面调用外部类的方法。

public class Body{

 

public class Heart{

public class beat(){

}

}

 

public void methodBody(){

     Heart heart = new heart();

     heart.beat();    

}

}

 

public class DemoInnerClass{

public static void main(String[] args){

Body body = new Body();

body.methodBody();

}

}

 

2.直接方式:公式:

外部类名称.内部类名称  对象名 = new 外部类名称().new 内部类名称();

 

Body.Heart heart = new Body().new Heart();

 

内部同名变量访问

如果出现的重名现象,那么格式是:

外部类名称.this.外部 成员变量名;

【Java】内部类的概念与分类