Java中的内部类

本文详细介绍了Java中的内部类概念,包括成员内部类、匿名内部类等,并通过具体示例展示了如何创建和使用这些内部类。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Java中的内部类,就是说的一个类的内部还有别的类,正如一台电脑,电脑的内部还有别的零件,零件都有各自的属性和方法。

内部类,可以被static、final、private、protected、public修饰.

内部类又包含成员内部类和匿名内部类、私有内部类、静态内部类、方法内部类。

首先,来段代码

class Computer{
   String name;
   class CPU{
      void print(){
       System.out.println("cpu....");
     }
   } 
}

如果,要访问CPU.class,那么写法就是

Computer.CPU cpu = new Computer().new CPU();

另外一种写法,便是

class Computer{
   String name;
   class CPU{
      void print(){
       System.out.println("cpu....");
     }
   }
   CPU cpu = new CPU(); 
}

如果,要访问CPU.class,那么写法就是

Computer.CPU cpu = Computer.cpu;

如果,内部类是静态的

class Computer{
   String name;
   static class CPU{
      void print(){
       System.out.println("cpu....");
      }
   } 
}

那么,写法就变成了

Computer.CPU cpu = new Computer.CPU();
//访问print
cpu.print();
//如果,print被static修饰,变成静态方法
//可以通过类名访问,即 Computer.CPU.print();

匿名内部类的写法如下

abstract class CPU{
   abstract void work();
}
class Computer{
   public void print(){
      new CPU(){
        @Override
        void work(){
          //....
        }
      }
   }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值