为什么要使用内部类??以及内部类大汇总!!面试必备!!

来源:互联网 发布:淘宝去年的交易记录 编辑:程序博客网 时间:2024/05/22 13:29

我们为什么要使用内部类呢???


第一:内部类可以访问外围类的 私有数据,何其方便。。

第二当然是内部类对其他类隐藏不可见

第三 回调时  使用内部类可以省略大量的代码


那么内部类又有几种呢???

根据不同 的依据分类不同,用代码说话:

One : 一般的内部类

class A {     ......      class B{//创建一般内部类            .....      }}

Two:局部类不能使用public和private访问说明符进行声明匿名的局部内部类 : 只创建一个实现接口B的一个对象,

与普通的局部内部类相比可以节省录入代码时间


class A {       ......       private void getName(){             ......             B b = new B(){//创建匿名内部类                   ......              }       }}

Three:局部内部类 : 该局部类只在getName方法时使用,除了getName方法外,没有任何方法知道局部内部类B的存在

class A {      .......      private void getName(){             .......             class B {//在方法内部创建局部内部类                   ......             }      }}

Four:如果内部类不需要去 引用外围类,则可以将内部类定义为静态的称之为静态内部类,(非局部类可以使用public,private访问说明符)


class A {      ......     public static class B {           ......     }}

来个小小的测试,局部类中

代码段1: Person  person = new Person();//一个person对象代码段2: Person person = new Person(){  //一个继承于person的内部类的对象,相当于是创建了Person子类对象  .........}







1 0
原创粉丝点击