美文网首页
10.8为什么需要内部类

10.8为什么需要内部类

作者: 陈晓松快点跑 | 来源:发表于2024-10-07 21:27 被阅读0次

tij原文
我们已经看到了许多描述内部类的语法和语义,但是这并不能回答“为什么需要内部类”这个问题。那么,Sun公司为什么会如此费心地增加这项基本的语言特性呢?

一般来说,内部类继承自某个类或实现某个接口,内部类的代码操作创建它的外围类的对象。所以可以认为内部类提供了某种进入其外围类的窗口。


内部类必须要回答的一个问题是:如果只是需要一个对接口的引用,为什么不通过外围类实现那个接口呢?

\color{red}{答案是:“如果这能满足需求,那么就应该这样做。”}


那么内部类实现一个接口与外围类实现这个接口有什么区别呢?

\color{red}{答案是:外围类不是总能享用到接口带来的方便,有时需要用到接口的实现。}


所以,使用内部类最吸引人的原因是?

\color{red}{答案是:每个内部类都能独立地继承自一个(接口的)实现,}
\color{red}{所以无论外围类是否已经继承了某个(接口的)实现,对于内部类都没有影响。}


个人理解

内部类可以实现多重继承。一个外围类可以包含多个内部类,每个内部类都可以去实现一个接口。

相关文章

  • day06

    续内部类 10.8 为什么需要内部类 每个内部类都能独立地继承自一个(接口的)实现,所以无论外围类是否已经继承了某...

  • java内部类

    开篇问题 为什么需要内部类? 为什么内部类,会持有外部类的引用? 为什么匿名内部类使用到外部类方法中的局部变量时需...

  • Java内部类

    Java内部类 大纲: java内部类有什么特点?为什么需要内部类? 非静态内部类持有外部类的引用 内部类的分类。...

  • 内部类

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

  • 内部类

    为什么需要内部类?内部类的好处? 内部类可访问其所在作用域(外部类)中的数据,包括私有数据 内部类可以对同一个包中...

  • 匿名内部类问题

    匿名内部类访问的外部类局部变量为什么要用final 修饰,jdk8为啥不需要了? 匿名内部类访问的外部类局部变量为...

  • Java 内部类

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

  • java内部类

    一、内部类为什么存在 为什么要使用内部类 二、内部类的分类 java内部类的分类 三、为什么内部类中访问局部变量,...

  • Java基础系列之内部类的多重继承与事件回调

    首先说为什么要使用内部类: 1、实现多重继承 2、实现闭包(隐藏关键环节) 3、回调 常见内部类类型 1、非静态内...

  • Java学习——内部类

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

网友评论

      本文标题:10.8为什么需要内部类

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