Java条记(一)内部类

打印 上一主题 下一主题

主题 866|帖子 866|积分 2598

这是关于我对内部类明白的条记,可能写的不怎么好,以是虚心接受大佬的指导
内部类(Nested Class)


  • 定义在一个类中的另一个类被叫做内部类(Inner Class),
  • 内部类有四种类型成员内部类、静态内部类、局部内部类、匿名内部类
  • 成员内部类、局部内部类、匿名内部类中
成员内部类
  1. // inner class
  2. public class Main {
  3.     public static void main(String[] args) {
  4.         Outer outer = new Outer("Nested"); // 实例化一个Outer
  5.         Outer.Inner inner = outer.new Inner(); // 实例化一个Inner
  6.         inner.hello();
  7.     }
  8. }
  9. class Outer {
  10.     private String name;
  11.     Outer(String name) {
  12.         this.name = name;
  13.     }
  14.     class Inner {
  15.         void hello() {
  16.             System.out.println("Hello, " + Outer.this.name);
  17.         }
  18.     }
  19. }
复制代码

  • 直接定义在类内里的是成员内部类,定义在类中,作用域也在类中,可以直接访问外部类的全部成员,包括私有的,
静态内部类


  • 如果用static修饰的就是静态内部类。只能访问外部类的静态成员包括私有的
局部内部类


  • 局部内部类定义在外部类的方法体或代码块中,作用域在这个代码块或方法体中。成员内部类可以直接访问外部类的全部成员包括私有的。只可以利用final修饰
匿名内部类


  • 该类没有类名的话就是匿名内部类,定义在外部类的方法或代码块中,匿名内部类相称于创建了一个接口或类的对象,在对象中直接重写方法,如果这个匿名内部类声明了详细的对象名的,则可以复用这个对象,但是这个匿名内部类只能利用一次

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

风雨同行

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表