内部类

成员内部类


内部类:

  • 一个类定义在另外一个类的内部,那么该类就称作为内部类。

内部类的区别:

1 成员内部类:

  • 成员内部类的访问方式:

  • 方式一:在外部类提供一个方法创建内部类的对象进行访问。

  • 方式二:在其他类直接创建内部类的对象。格式:

         外部类.内部类 变量名 = new 外部类().内部类();
    
  • 注意:如果是一个静态内部类,那么在其他类创建的格式如下:

         外部类.内部类 变量名 = new 外部类.内部类();
    
  • 内部类的好处:内部类可以直接访问外部类的所有成员。

  • 内部类要注意的细节:

  • 如果外部类与内部类存在同名的成员变量时,在内部类中默认情况下是访问内部类的成员变量。可以通过外部类.this.成员变量名指定访问外部类的成员。

  • 私有成员内部类只能在外部类中提供一个方法创建内部类的对象进行访问,不可以在其他类中直接创建内部类的对象。

  • 成员内部类一旦出现了静态的成员,那么该类也必须使用static修饰。

2 局部内部类:

  • 局部内部类:
  • 在一个类的方法内部定义另一个类,那么两一个类就称作局部内部类。
  • 局部内部类要注意的细节:
  • 如果局部内部类访问了一个局部变量,那么该局部变量必须使用final修饰。
jubu.png

为了保持一致性,故使用final进行修饰。

匿名内部类


  • 没有类名的类就称作为匿名内部类。

匿名内部类的好处:

  • 简化书写

匿名内部类的使用前提:

  • 必须存在继承或者实现关系才能使用。

匿名内部类一般用于实参。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Java 内部类 分四种:成员内部类、局部内部类、静态内部类和匿名内部类。 1、成员内部类: 即作为外部类的一个成...
    ikaroskun阅读 1,246评论 0 13
  • 一、继承 当两个事物之间存在一定的所属关系,即就像孩子从父母那里得到遗传基因一样,当然,java要遗传的更完美,这...
    玉圣阅读 1,065评论 0 2
  • 许久不熬夜看球了,上届世界杯看到元气大伤,从韩国人肉了一箱子的面膜也没能把我的脸从腌干菜救回成水白菜,说啥都不...
    船的故事阅读 564评论 0 0