面向对象之继承
1、抽象
什么是抽象?
抽象涉及定义代表抽象“参与者”的对象工具,这些参与者可以执行工作。同时抽象是使用与其含义相似的表达形式定义数据和程序的过程,同时隐藏实现细节。
抽象类型
1、数据抽象:数据抽象是创建复杂数据类型并仅公开有意义的操作与数据类型交互的方法。同时对外部工作隐藏所有实现细节。
2、控制抽象:控制抽象是识别所有编程语言编写的语句并且将他们作为工作单元公开的过程。
实现抽象
关键词:abstract
抽象是面向对象编程实践的核心原则之一,是Java语言的主要构建块之一。
在Java中通过接口与抽象类来实现抽象,接口允许完全抽象实现,抽象类允许部分抽象实现。在实现抽象中,从简单的数据抽象的实现,到复杂的集合类的实现是我们的数据抽象的体现。控制抽象体现在我们结构化编程中。
2、封装
封装是我们自定义抽象的实现。它将我们的代码与变量封装在同一个类中,实例变量私有化,只有方法可以操控我们的变量。
封装抽象
抽象更多的是描述类可以干什么?是我们想法的一种体现。封装更多关注如何来实现这些功能,它更多注重于实现想法上。
3、继承
继承是指子类对象从父类对象继承或者获取属性和行为的能力。
目的是减少代码冗余,提高代码可复用性,实现类与类之间的层次化结构。
Java中的继承是指子类可以继承父类的公共状态和行为,以及子类可以继承父类中所有非私有的成员变量或方法。
继承关键字:extends。
继承的类型
1、单继承:只有一个父类和一个子类
2、多级继承:一个子类充当另一个子类的父类
3、分层继承:一个父类和多个子类。
4、从多个父类继承行为。如果一个类实现了两个接口并且都定义了默认方法,那么它本质上是从两个父类继承行为,即多重继承。JDK1.8开始可以通过带有默认方法的接口进行多继承,默认方法是使你能够向接口添加新功能并确保实现改接口的所有类的向后兼容性。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)