byt365

内部类的分类有哪些?什么是内部类?

📅 2026-02-17 19:43:52 👤 admin 👁️ 2910 🏷️ 319

内部类的分类有哪些?

内部类可以分为四种: 成员内部类、局部内部类、匿名内部类和静态内部类 。

什么是内部类?

在java语言中,可以吧一个类定义到另外一个类的内部,在类里面的这个类就叫内部类,外面的类就叫外部类。在这情况下,这个内部类可以看做外部类的一个成员。还有一种类被称为顶层类,指的是类定义代码不嵌套在其他类定义中的类。

静态内部类是指被声明为static的内部类,他可以不依赖内部类而实例,而通常的内部类需要实例化外部类,从而实例化。静态内部类不可以有与外部类有相同的类名。不能访问外部类的普通成员变量,但是可以访问静态成员变量和静态方法(包括私有类型)一个 静态内部类去掉static 就是成员内部类,他可以自由的引用外部类的属性和方法,无论是静态还是非静态。但是不可以有静态属性和方法、

局部内部类 就是定义在一个代码块的内类,他的作用范围是所在代码块,是内部类中最少使用的一类型。局部内部类跟局部变量一样,不能被public ,protected,private以及static修饰,只能访问方法中定义final类型的局部变量。

匿名内部类是一种没有类名的内部类,不使用class,extends,implements,没有构造函数,他必须继承其他类或实现其他接口。匿名内部类的好处是使代码更加简洁,紧凑,但是带来的问题是易读性下降。他一般应用于GUI编程来实现时间处理等 。在使用匿名内部类时,需要牢记以下几个原则。1》内部类没有构造方法2》匿名内部类不能定义静态成员,方法和类3》匿名内部类不能是public protected private static4》只能创建匿名内部类的一个实例5》一个匿名内部类可以在new后面,这个匿名类必须继承一个父类或实现接口6》因为匿名内部类为局部内部类,所以局部内部类的所有限制都对其生效

相关推荐

王者排位16个必买英雄 上王者必练英雄 王者荣耀英雄购买推荐

研究声明:王者排位16个必买英雄榜中榜,CNPP小编盘点了该版本中胜率较高、实力相对较强的英雄角色(成绩评定时间截至2022年3月4日)。不同

Foxmail使用经验总结

在数字化办公日益普及的今天,电子邮件已经成为我们工作中不可或缺的一部分。作为一名职场人士,我深深感受到了邮件管理的重要性。而Foxm

世界杯淘汰赛输一场就淘汰出局吗 世界杯八强八分之一出线规则

世界杯淘汰赛输一场就淘汰吗?世界杯淘汰赛输了会怎么样,直接出局吗?在2022年卡塔尔世界杯中将会开展16场淘汰赛,分别有8场1/8决赛,4场1/