JAVA-内部类

内部类表示的事物是外部类的一部分,单独出现没有任何意义,所以才定义在外部类内,而不是成为外部类的成员。

内部类的访问特点:

  • 内部类可以直接访问外部类的成员,包括私有。
  • 外部类要访问内部类的成员,必须创造对象。

分类:(前三个了解即可)

  • 成员内部类
  • 静态内部类
  • 局部内部类
  • 匿名内部类(需要掌握)

匿名内部类:

隐藏了名字的内部类。

格式:

new 类名/接口名(){
    重写方法;
};

理解:某些场景需要一个对象(继承某个父类/实现某一接口)去完成一次动作,而且只出现一次(很少),为此再编写一个独立的类就会造成不必要的开销。而使用匿名内部类能快速实现这个动作而不去额外建造一个类。

使用场景:

当方法的参数是接口或者类时,以接口为例,可以传递这个接口的实现类对象,如果实现类只要使用一次,就可以用匿名内部类简化代码。

匿名内部类的意义:

  1. 简化实现
    • 在仅需要一次使用的场景中,匿名内部类可以避免创建一个额外的命名类。比如在事件处理、线程执行等情况下,代码量较少,逻辑明确。
  2. 直接访问外部类的成员
    • 匿名内部类可以访问外部类的成员(包括私有成员),这使得在处理逻辑时更方便,尤其在复杂逻辑中,这种直接访问可以提高效率。
  3. 提升局部性
    • 匿名内部类通常定义在方法内部,使得这个类只在这个方法的上下文中可用,提升了封装性,减少了命名冲突的可能性。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇