java的内部类

内部类

就是位于外部类成员位置的类

特点:

可以使用外部类的成员变量和方法不受private限制

为什么要用内部类:

只在类或接口中执行一次,为了使用不创建新类,减少代码冗余,所以用内部类,可以使用匿名内部类

好处:

可以直接使用外部类成员,使用更加方便。例如在服务器端创建 一个内部类继承Thread,进行监听

意义:

1.将只有在某个类中使用的功能定义在内部中,并可以使用不同访问权限修饰控制

2.可以实现多继承

3.实现封装,将某些功能定义在内部类中,可以通过访问修饰符进行控制

匿名内部类:

有些功能只用一次,没必要创建一个单独类,在java中提供了一个匿名的类,用来实现接口/继承抽象类,在哪使用之间在哪new,例如new接口/抽象类,这个都不是创建接口的对象,而是创建了一个匿名内部类,是对内部类在语法上的一种简化

多继承:
java 复制代码
public class Father{
	public String powerFul = "aa";
}
public class Mother{
	public String wealthy = "bbb";
}
java 复制代码
public class Son{
	class Extends_Father extends Father{
	}
	class Extends_Mother extends Mother{
	}
	public void sayHello(){
		String father=new Extends_Father().powerFul;
		String mother=new Extends_Mother().wealthy;
	}
}

这样子就可以在Son里面使用Mother和Father两个类里的成员变量

相关推荐
2601_9620715716 分钟前
【Java报错已解决】org.springframework.beans.factory.BeanCreationException
java·开发语言
zww89491111 小时前
酒馆预约系统开发实战:从需求分析到上线全流程指南
java·eclipse
淡海水1 小时前
07-04-并发-ConcurrentBag-T-工作窃取WorkStealing算法
开发语言·算法·c#·bag·concurrent·workstealing
CS_Zero2 小时前
C语言sizeof是函数吗?
c语言·开发语言
-今昭-3 小时前
《V2V 迁移实战:将 VMware 虚拟机转为 OpenStack 可用 Glance qcow2 镜像》
开发语言·python
zww89491114 小时前
匿名树洞系统开发实战:从需求分析到部署指南
java·eclipse
黑马程序员毕设5 小时前
基于Java的医院药品管理系统的优化设计与实现
java·开发语言·spring boot·小程序·架构·课程设计·毕设
木井巳5 小时前
【BFS/DFS 解决 FloodFill 算法】太平洋大西洋水流问题
java·算法·leetcode·深度优先·广度优先·宽度优先·推荐算法
白山编程大哥5 小时前
Java 集合算法:从排序、查找到底层原理的实战指南
java·python·算法
_Twink1e5 小时前
openJiuwen 实训营 Day 1 · WorkSwarm 入门教程
开发语言·c++·openjiuwen