美文网首页
匿名类和内部类

匿名类和内部类

作者: Blessure_d95b | 来源:发表于2018-10-05 23:30 被阅读0次

根据内部类的位置不同,可将内部类分为

  1. 成员内部类
  2. 局部内部类
class C{
    //成员内部类
    class B{
    }

    public void show1() {
    //局部内部类
        class D{
        }
    }
}

匿名内部类

  1. 概念:即内部类的简化写法
  2. 前提:存在一个类(可以是具体类也可以是抽象类)或接口
  3. 格式:new 类名或接口名{重写的方法}
  4. 本质:创建的是继承了类或实现了接口的子类匿名对 象。

Java语言规范上是这么描述匿名类的:

匿名类的声明:

  • 匿名类的声明是由java编译器自动派生自一个类实例创建表达式。
  • 匿名类永远不能是抽象的。
  • 匿名类总是隐式的final。
  • 匿名类总是一个内部类;并且不能是static的。

匿名内部类在开发中的使用,一般是方法参数为接口的情况

interface D{
    void ShowContext();
}
class B{
    //参数为接口对象
    public void show(D d) {
        d.ShowContext();
    }
}

public class niming {
    public static void main(String[]args) {
        B b=new B();
        //调用时使用匿名类创建匿名对象
        b.show(new D(){
            @Override
            public void ShowContext() {
                System.out.println("hello");
            }
        });
    }
}

相关文章

  • 内部类

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

  • Java匿名内部类

    导语 学完匿名内部类就懂的情书。 主要内容 接口与抽象类和匿名内部类的关系 具体内容 匿名内部类也就是没有名字的内...

  • 2020-09-12 Java内部类、匿名内部类(重要)

    内部类 一个类包含另一个类。被包含的类叫内部类。(身体和心脏的关系)分类:1.成员内部类2.局部内部类(包含匿名内...

  • Java 内部类

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

  • 每日一点(1)

    匿名类 内部类 匿名内部类 匿名类(可以是接口 抽象类 普通类):1:无需创建对象2:直接重写方法 内部类:若一...

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

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

  • java学习笔记(十三)内部类

    1、概述 内部类即在类的内部在创建一个类 分为成员内部类(直接在类中创建) 局部内部类(在成员方法中创建) 匿名内...

  • 热修复原理拆解个人笔记(一)

    源于sophix文档: 内部类/外部类java编译器对内部类的处理 匿名内部类匿名内部类 类加载类加载时间 fin...

  • (第05天)Handler使用可能导致内存泄漏

    非静态内部类和匿名内部类都会保留外部类的引用。 这个引用是强引用,引用在,JVM就不会回收。 我们经常会在类内声明...

  • Java类和对象

    类的分类 1.静态类和实例类2.内部类和外部类3.抽象类和实体类4.匿名类和非匿名类5.父类(基类)和子类(派生类...

网友评论

      本文标题:匿名类和内部类

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