zoukankan      html  css  js  c++  java
  • 内部类

    1.内部类就是在一个类的内部又创建一个类.。

    内部类既可以访问自身的数据域,也可以访问创建它的外围类对象的数据域。

    内部类的对象总有一个隐式引用, 它指向了创建它的外部类对象

    为了说明这个概念 , 我们将外围类对象的引用称为 outer(有点类似与this),但是其实并没有。

    这个outer写出应该是 外类类名.this

    下面这个例子写出了内部类对象的创建

    AA a= new AA() ;//其中AA类中有一个BB类
    AA.BB b = a.new BB();

    2.局部内部类:局部内部类就是将类创建到方法中,他不能加public这种修饰符。局部类可以对外部世界可以完全地隐藏起来 。 即使外部类中的其他代码也不能访问它。 除了定义局部内部类的方法之外 , 没有任何方法知道这个内部类的存在

    3.匿名内部类假如只创建这个类的一个对象 , 就不必命名了 。 这种类被称为匿名内部类。

    代码如下:

    ActionListener listener = new ActionListener()
    {
      public void actionPerformed ( ActionEvent event )
      {
        System.out.println (" At the tone, the time is " + new Date() ) ;
        if (beep) Toolkit.getDefaultToolkit( ).beep( ) ;
      }
    };

    它的含义是 : 创建一个实现 ActionListener 接口的类的新对象, 需要实现的方法 actionPerformed 定义在括号内

    SuperType 也可以是一个类 , 于是内部类就要扩展它

    3.静态内部类

    使用内部类只是为了把一个类隐藏在另外一个类的内部, 并不需要内部类引用外围类对象。 为此 , 可以将内部类声明为static , 以便取消产生的引用






  • 相关阅读:
    iOS.CM5.CM4.CM2
    iOS.Library.Architecture
    iOS.Info.plist
    iOS.ARM-Assembly
    Tools.Png.Compression
    MacDev.GetArchOfLibrary
    iOS.C
    iOS.Notification.Bar.Color
    iOS.-.cxx_destruct
    iOS.UITableView.SectionIndex
  • 原文地址:https://www.cnblogs.com/TheQi/p/10446234.html
Copyright © 2011-2022 走看看