内部类

 
image

【】一个类定义在另一个类内部

image

【】编译后结果:两个类都生成class文件

外部.class文件、外部$内部.class文件(有所属的内部类)

 

image

【】内部类出现原因:某类为了更方便地访问另一类的私有成员。

如果两个类独立,一类想访问另一类的私有成员,需要建立对象再调用相关方法才能办到。

image
【】孙悟空钻进铁扇公主肚子,孙悟空可以直接访问铁扇公主的心肝脾肺肾,铁扇公主没法直接访问孙悟空的心肝

image

【】心脏需要访问其他成员,定义在身体里面访问方便。

【】内部类的设计方式相当于一种封装

 
 
 二、内部类修饰符---》几种调用内部类的类型
【】内部类定义在了成员位置,就可以被成员修饰符修饰

 【】public共有权力最大

【】private只在本类中有效

【】什么都不写也是一种权限

public》空白》private

 【】内部类无修饰符,需要先建立外部类对象再建立内部类对象去访问

图片

【】但是,一般会把内部类私有化private封装起来,不让直接访问内部类。

【】内部类前加static,意味着外部类一加载内部类就存在 。

可以通过类名调用内部类,不需要在建立外部类对象了,只需要建立内部类对象即可。

图片

图片

 

 

 

 【】内部类加static,并且里面方法也加了static,那么可直接通过外部类名.内部类名.方法名,来调用该方法

图片

 

图片

 

 【】如果内部类里面定义了静态成员,该内部类必须也被静态修饰。

静态随着类的加载而加载,不需要创建对象。如果内部类不加static,外部类没法直接调用内部类,还得建立外部类对象。

 
 
 三、
 

图片

 

图片

 

 
四、局部内部类

【】内部类可以和成员并列,也可以放到成员方法内部

image

 

【】

image

image

【】final int x=9;之后x不会变化,变成了常量

image

 
 
 
 
 
 
 
 
 
 
posted @ 2025-09-11 17:15  ibddindonon  阅读(3)  评论(0)    收藏  举报