zoukankan      html  css  js  c++  java
  • Java 内部类知识梳理

    Java引入内部类的真正意义就在于,还是有很多情况,没有内部类是处理不了的,或者用内部类处理起来更加优雅

    Java引入内部类的真正意义就在于,还是有很多情况,没有内部类是处理不了的,或者用内部类处理起来更加优雅

    内部类:成员内部类、静态嵌套类、方法内部类、匿名内部类。

    典型的情况是,内部类继承自某个类或实现某个接口,内部类的代码操作创建其他外围类的对象。所以你可以认为内部类提供了某种进入其外围类的窗口。使用内部类最吸引人的原因是:

    每个内部类都能独立地继承自一个(接口的)实现,所以无论外围类是否已经继承了某个(接口的)实现,对于内部类都没有影响。如果没有内部类提供的可以继承多个具体的或抽象的类的能力,一些设计与编程问题就很难解决。从这个角度看,内部类使得多重继承的解决方案变得完整。接口解决了部分问题,而内部类有效地实现了"多重继承"。

    当A,B两个类需要互相访问对方的成员变量和方法,而又不能牺牲B的封装性的时候,就可以把B放到A类内部,这样即使B类设置成private,A类也可以访问,这样就既保留了B的封装性又满足了A类的访问需求

    好处就是内部复杂的机制隐藏起来了,你可以看到config拿到了之后,用户就不能随意更改了,参数只能get出来,使暴露的接口更加简洁。

  • 相关阅读:
    阿里云前端周刊
    在没有DOM操作的日子里,我是怎么熬过来的(中)
    【php学习】数组操作
    App之百度云推送
    L2-008. 最长对称子串
    整数划分问题之递归法
    分治法之归并排序(递归+分治)
    L2-005. 集合相似度
    分治法之棋盘覆盖问题
    L2-003. 月饼
  • 原文地址:https://www.cnblogs.com/yuanhailiang/p/8795486.html
Copyright © 2011-2022 走看看