Java——面向对象

本文深入探讨了面向对象编程的核心概念,包括封装、继承和多态。封装作为信息隐藏技术,提高了代码的安全性和可维护性;继承则允许子类共享父类的属性和方法,减少了代码冗余;多态则增强了代码的灵活性和扩展性。通过这些原则,开发者可以更好地组织和设计复杂的软件系统,提升代码质量。
摘要由CSDN通过智能技术生成

面向对象

面向对象是基于面向过程的编程思想,面向过程强调的是每一功能的步骤;

面向对象强调的是对象,然后由对象去执行,对象间通过消息相互作用;

现实世界中任何实体都可归属于某类事物,任何对象都是某一类事物的实例,

面向对象的特点:是一种更符合我们思想习惯的思想,可以将复杂的事情简单化, 将我们从执行者变成指挥者。

 

面向对象三大特性

封装:

为什么要进行封装?

封装是一种信息隐藏技术,在Java中通过控制成员的访问权限实现封装,即使用方法将类的数据隐藏起来,控制用户对类的访问和修改数据的程度。适 当的封装可以让代码更容易理解和维护,也加强代码的安全性。

概述:

即隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读和修改的访问级别;将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进行有机的结合,形成“类”,其中数据和函数都是类的成员。

优点:封装的目的是增强安全性和简化编程,使用者不必了解具体的实现细节, 而只是要通过外部接口,以特定的访问权限来使用类的成员。

Private 是封装的一种体现,被private修饰后的成员只能在本类中被访问, 对外提供get()和set()方法;

继承:

为什么要进行继承?

将众多子类中相同的功能和属性提取出来组成一个公共父类,编写子类时继承父类的属性和方法;子类就不会存在重复的代码,维护性也提高,代码更加简洁,提高代码的复用性。

概述:继承机制允许创建等级层次的类,继承就是子类继承父类的特征和行为, 使得子类对象(实例)具有父类的实例和方法,或子类从父类继承方法,使得子 类具有父类相同的行为。

弊端:让类的耦合性增强,这样某个类的改变,就会影响其他和该类相关的类;

原则:原则低耦合,高内聚,(内聚:自己完成某件事的能力,耦合:类与类的 关系)

多态:

同一个行为具有多个不同表现形式或形态的能力。是指一个类实例(对象) 相同方法在不同情形有不同表现形式。

概述:多态机制是具有不同内部结构的对象可以共享相同的外部接口。这意味 者,虽然针对不同对象的具体操作不同,但通过一个公共的类,它们可以通过 相同的方式予以调用。多态的优点:提高代码的维护性(建立在继承上的提现), 提高代码的扩展性(多态的体现)

弊端:父类不能使用子类的特有功能 现象:子类可以当作父类使用,父类不能当 作子类使用;

使用多态前提:有继承或者实现关联;有方法重写;有父类或者父类接口引用指 向子类对像;

 

面向对象五大原则:

单一职责原则:一个类应该有且只有一个去改变它的理由,不能包罗万象,这意味着一个 类应该只有一项工作,功能要单一;

开放封闭原则:对象或实体在扩展性方面应该是开放的,而在更改性方面应该是封闭的

里氏替换原则:子类应当可以替换父类并出现在父类能够出现的任何地方

依赖倒置原则:高层次的模块不应该依赖于低层次的模块,他们都应该依赖于 抽象。具体实现应该依赖于抽象,而不是抽象依赖于现实

接口隔离原则:模块间要通过抽象接口隔离开,而不是通过具体的类强耦合起来

(具体解释)不应该强迫客户端实现一个它用不上的接口,或者说客户端不应该被迫依赖它们不使用的方法,使用多个专门的接口比使用单个接口要好的多.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值