内部类

作者: 寂静的春天1988 | 来源:发表于2020-05-08 23:34 被阅读0次

顾名思义内部类就是创建在类内部的一个类

public class Test {
    class A {
        private int age;
    }
}

内部类的特点:
1、内部类可以直接访问外部类的成员,包括私有
2、外部类要访问内部类的成员,必须创建对象

内部类的位置:
1、成员内部类
2、局部内部类

public class Test {
    //成员内部类
    class A {
        private int age;
    }
    
    public void method() {
        //局部内部类
        class B {
            private int age;
        }
    }
}

访问内部类的成员:外部类.内部类 对象名 = new 外部类().new 内部类()

class Outer {
    class Inner {
        public void method() {
            System.out.println(111);
        }
    }
}

public class Test {
    
    public static void main(String[] args) {
        Outer.Inner oi=new Outer().new Inner();
        oi.method();
    }
    
}

二、匿名内部类

interface inner{
    public void show();
};
class Outer {
    public void method() {
        new inner() {
            @Override
            public void show() {
                System.out.println("show");
            }
        };
    }
}
public class Test {
    
    public static void main(String[] args) {
        new Outer().method();
    }
}

1、创建匿名内部类的格式:
new 抽象类名或者接口名(){
重写方法。
}

上面得代码很像new了一个接口,但是,不是!接口也是不能new的,这是创建了一个匿名内部类。
总结:匿名内部类就是创建了抽象类的子类,或者接口实现类的匿名对象。

上面只是创建了匿名内部类还没有调用

inner i = new inner() {
    @Override
    public void show() {
        System.out.println("show");
    }
};
i.show();

相关文章

  • 内部类

    成员内部类 局部内部类(定义在方法内和定义在作用域内的类) 匿名内部类

  • Java 内部类

    内部类包括成员内部类、方法内部类、*静态内部类、匿名内部类*。 内部类的作用 由于内部类的实现和外部类没有关系,内...

  • Java学习——内部类

    内部类 一,成员内部类(包括静态内部类和非静态内部类) 非静态内部类可以直接访问外部类的成员,反之则不行 非静态内...

  • Java 内部类、静态内部类、方法内部类(未完待续)

    内部类 什么是内部类?内部类其实就是在一个类中创建的类。内部类有四种: 成员内部类 静态内部类 局部内部类 匿名内...

  • java 内部类

    一般有四种内部类的使用方式: 嵌套的内部类 方法内的内部类 静态内部类 匿名内部类 什么时候用内部类: 有时候明显...

  • 内部类

    内部类 1.可以访问访问其外部类所有属性和方法,无需创建外部类对象 2.必须创建内部类对象,否则无法从外部类访问内...

  • Java 中的方法内部类

    Java 中的方法内部类 方法内部类就是内部类定义在外部类的方法中,方法内部类只在该方法的内部可见,即只在该方法内...

  • java——内部类

    内部类 定义: 内部类是指在一个外部类的内部再定义一个类。内部类作为外部类的一个成员,并且依附于外部类而存在的。内...

  • java之面向对象5

    方法内部类: 简而言之就是定义在外部类的方法内的类。 方法内部类只在该方法的内部可见,即只在该方法内可以使用。 方...

  • Java 内部类

    1. 内部类 概念:在一个类的内部再定义一个完整的类内部类分为 4 类:成员内部类、静态内部类、局部内部类、匿名内...

网友评论

      本文标题:内部类

      本文链接:https://www.haomeiwen.com/subject/qqccnhtx.html