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两个类里的成员变量

相关推荐
余额瞒着我当琳4 分钟前
C++--vector第二讲:手写 C++ STL:vector 源码剖析与迭代器失效分析
android·java·c++
xixiaoyunya5 分钟前
从零搭建跨域互联网络:个人与小团队的轻量组网方案技术解析
开发语言·智能路由器·php
资源大佬星 课it9 分钟前
黑马 Java+AI新版V16零基础就业班视频课程百度网盘下载
java·开发语言·人工智能
zmzb010311 分钟前
Python课后习题训练记录Day193
开发语言·python
郝学胜-神的一滴16 分钟前
[简化版 GAMES 104] 现代游戏引擎 06:从Tick时序到邮局模型,拆解确定性世界的底层密码
开发语言·c++·游戏引擎·图形渲染·软件开发·opengl
二十雨辰16 分钟前
[Java]-微服务面试题
java·开发语言·微服务
不会代码的小猴17 分钟前
6. Qt网络编程
开发语言·c++·笔记·qt·算法
我命由我1234518 分钟前
Compose Codelab 学习 - Compose 中的基本布局
android·java·java-ee·kotlin·android studio·android-studio·android runtime
caimouse23 分钟前
ReactOS 图形系统分析(50):画笔子系统 — pen.c
c语言·开发语言·stm32
莫得感情 o40 分钟前
并发 11 · 同步工具类
java·并发