20_内部类

Posted bajiaotai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了20_内部类相关的知识,希望对你有一定的参考价值。

技术图片

 

 1.概念

技术图片

 


 

 2.内部类的作用

技术图片

 


 

 3.原理

技术图片

 


 

 4.分类

技术图片

 


 

 5.内部类中为什么不能声明静态成员?

技术图片

 


 

 6.成员内部类的修饰符

技术图片

 


 

 7.局部内部类的修饰符

技术图片

 


 

 8.成员内部类

技术图片

 

8.1 成员内部类代码实现

package JavaBasicReview;

public class JavaGrammer {
    public static void main(String[] args) {
        //创建外部类,外部类在内部类之前创建,内部类创建后会获取外部类对象的引用
        Outer outer = new Outer();
        outer.getInner();
        System.out.println("====it‘s Inner======");
        //创建成员内部类,使用内部类之前,外部类会自动创建
        Outer.Inner inner = new Outer().new Inner();
        inner.show();
    }
}


class Outer {
    private int age = 16;

    public Outer() {
        System.out.println("Outer created!");
    }

    //成员内部类
    class Inner {
        private int age = 17;

        public Inner() {
            System.out.println("Inner created!");
        }

        void show() {
            System.out.println("Outer‘s age:" + Outer.this.age);
            System.out.println("Inner‘s age:" + this.age);
        }
    }

    void getInner() {
        Inner inner = new Inner();
        System.out.println("Outer‘s age:" + this.age);
        System.out.println("Inner‘s age:" + inner.age);
    }
    
}

Outer created!
Inner created!
Outer‘s age:16
Inner‘s age:17
====it‘s Inner======
Outer created!
Inner created!
Outer‘s age:16
Inner‘s age:17

 

以上是关于20_内部类的主要内容,如果未能解决你的问题,请参考以下文章

20_内部类

错误:这个片段内部类应该是静态的 [ValidFragment]

Java_内部类

片段 - 全局视图变量与本地和内部类侦听器和内存泄漏

为啥片段类应该是公开的?

阶段1 语言基础+高级_1-3-Java语言高级_02-继承与多态_第7节 内部类_20_发红包案例_手气红包随机