内部类

Posted huanggy

tags:

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

成员内部类

当成外部类的一个属性

1, 私有变量变得不“私有”了,访问起来很方便

2, 在内部内中this指向外部类,“外部类.this”指向内部类

3, 实例化内部类:外部类.内部类 对象名 = new 外部类().new 内部类()

public class Outter {
    class Inner{
        public void sayHi() {
            System.out.println("hi...");
        }
    }
    public static void main(String[] args) {
        /*
         * 类型:外部类.内部类
         * 先new外部类,再new内部类
         * */
        Outter.Inner innerc = new Outter().new Inner();
        innerc.sayHi();
    }
}

4, private内部类:该内部类不能实例化

5, static内部类:在该内部类中同样不能访问静态变量和方法

6, 实例化static内部类:外部类.内部类 对象名 = new 外部类.内部类()

public class Outter {
    static class Inner{
        public void sayHi() {
            System.out.println("hi...");
        }
    }
    public static void main(String[] args) {
        /*
         * 类型:外部类.内部类
         * 访问静态变量,再new
         * */
        Outter.Inner innerc = new Outter.Inner();
        innerc.sayHi();
    }
}

 

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

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

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

ForegroundService没有从片段开始?

在内部片段类中使用ListView

自定义无内存泄漏的Handler内部类

底部导航 如何从片段内部更改片段