面向对象三大特性(封装、继承、多态)
-
封装(Encapsulation)
-
定义:将数据(属性)和操作数据的方法(行为)组合在一个类中,并对外隐藏内部实现细节,控制在程序中属性的读和修改的访问级别。
-
目的:
-
数据隐藏:防止外部直接访问和修改对象的内部状态。
-
接口抽象:只暴露必要的接口,简化对象的使用。
-
代码组织:提高代码的可维护性和可扩展性。
-
-
实现方式:通过访问修饰符(如
private
、protected
、public
)控制成员的可见性。
-
继承(Inheritance)
-
定义:一个类(子类)可以继承另一个类(父类)的属性和方法,实现代码的重用和扩展。
-
类型:
-
单继承:一个子类只能继承一个父类。
-
多继承:一个子类可以继承多个父类(Java不支持多继承,但通过接口实现类似功能)。
-
-
好处:
-
代码重用:减少重复代码,提高开发效率。
-
组织结构:构建清晰的类层次结构。
-
扩展性:在不修改父类的情况下,通过扩展子类来增加新功能。
-
-
多态(Polymorphism)
-
定义:同一个接口可以被不同的对象以不同的方式实现,允许通过同一接口访问不同类型的对象。
-
多态是同一个行为具有多个不同表现形式或形态的能力
在Java语言中,多态就是指程序中定义的引用变量所指向的具体类型和通过该引用变量发出的方法
调用在编程时并不确定,而是在程序运行期间才确定,即一个引用变量倒底会指向哪个类的实例对
象,该引用变量发出的方法调用到底是哪个类中实现的方法,必须在由程序运行期间才能决定。
-
实现方式:
-
编译时多态:通过方法重载(Overloading)实现。
-
运行时多态:通过方法重写(Overriding)和接口实现。
在Java中实现多态的三个必要条件:继承、重写、向上转型。继承和重写很好理解,向上转型是指
在多态中需要将子类的引用赋给父类对象。
-
-
好处:
-
代码复用:通过继承和方法重写,实现代码的复用。
-
扩展性:增加新类时,不需要修改现有代码。
-
解耦:降低模块之间的耦合度,提高系统的灵活性和可维护性。
-
总结
-
封装:隐藏内部细节,提供清晰的接口。
-
继承:实现代码重用和扩展。
-
多态:通过同一接口实现不同行为。
这三大特性共同构成了面向对象编程的基础,使得代码更加模块化、灵活和易于维护。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)