Java内部类与匿名内部类有何具体应用场景和用法差异?

2026-05-21 08:192阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计4711个文字,预计阅读时间需要19分钟。

Java内部类与匿名内部类有何具体应用场景和用法差异?

一、内部类: (1)内部类的同名方法: 内部类可以调用外部类的方法,如果内部类有与外部类相同名称的方法,必须使用OuterClass.this.MethodName()格式调用。 (2)内部类调用外部类方法: 内部类可以调用外部类的方法,格式为OuterClass.MethodName()。

一、内部类: 

(1)内部类的同名方法

内部类可以调用外部类的方法,如果内部类有同名方法必须使用"OuterClass.this.MethodName()"格式调用(其中OuterClass与MethodName换成实际外部类名及其方法;this为关键字,表示对外部类的引用);若内部类无同名方法可以直接调用外部类的方法。

但外围类无法直接调用内部类的private方法,外部类同样无法直接调用其它类的private方法。注意:内部类直接使用外部类的方法与该方法的权限与是否static无关,它取决于内部类是否有同名方法。

阅读全文

本文共计4711个文字,预计阅读时间需要19分钟。

Java内部类与匿名内部类有何具体应用场景和用法差异?

一、内部类: (1)内部类的同名方法: 内部类可以调用外部类的方法,如果内部类有与外部类相同名称的方法,必须使用OuterClass.this.MethodName()格式调用。 (2)内部类调用外部类方法: 内部类可以调用外部类的方法,格式为OuterClass.MethodName()。

一、内部类: 

(1)内部类的同名方法

内部类可以调用外部类的方法,如果内部类有同名方法必须使用"OuterClass.this.MethodName()"格式调用(其中OuterClass与MethodName换成实际外部类名及其方法;this为关键字,表示对外部类的引用);若内部类无同名方法可以直接调用外部类的方法。

但外围类无法直接调用内部类的private方法,外部类同样无法直接调用其它类的private方法。注意:内部类直接使用外部类的方法与该方法的权限与是否static无关,它取决于内部类是否有同名方法。

阅读全文