内部类的使用

内部类的分类:

  成员内部类 (直接声明在类的内部,与属性,方法并列)   vs 局部内部类(方法内,代码块内)

  成员内部类:>>>静态的成员内部类 vs 非静态的成员内部类

 

内部类的了解:

    一方面>>>,作为外部类的成员使用

        >可以使用4中权限符修饰

        >可以使用static修饰

        >可以调用外部类的结构:属性,方法

    另一方面>>>,作为类的角色

        >内部类可以声明属性,方法,构造器,代码块

        >可以被fianl修饰,不能继承

        >可以被abstract修饰,不能实例化

创建成员内部类的对象

calss Person{
String name:
int age:

public Person()()

public Person(String name)(
this.name=name;
)


public void eat(){
System.out.println("人吃饭");
}
//静态成员内部类 static class Dog{
public void shout(){
     System.out.println("汪汪");
} } //非静态内部成员类 class Bird{
public void sing(){
System.out.println("歌唱");
} public void info(){
System.out.println(name);
eat();
} } public void method(){ //局部内部类 class A{ } } } calss Test{ public static void main(String[] args){ //1.创建静态的成员内部类对象 Person.Dog dog =new Person.Dog(); dog.shout(); //创建非静态的成员内部类 Person.Birld bird =new Person.Birld();//错误演示
//2.创建非静态成员内部类的对象 Person p1 =new Person Person.Birld b1=p1.new Bird();
b1.sing(); } }

 

posted @ 2020-02-26 19:20  我的二天  阅读(184)  评论(0编辑  收藏  举报