首页 > 编程知识 正文

简述什么是面向对象,面向对象编程语言的三大特性

时间:2023-05-04 19:13:29 阅读:116515 作者:769

正文的阅读时间大约需要5分钟。

参考答案

封装:常见的编程范式是过程式编程、面向对象编程和函数式编程。 目前函数式编程很受欢迎,但面向对象编程仍然是主流。

在Java中,封装是一种抽象机制,Java提供了类和对象的概念。 对象包含一组数据和行为,可以响应相应的请求。 这样的机制有助于开发人员针对特定领域的问题进行编程,而不是像以前的过程性语言那样分步处理一些数据。 在这里,到目前为止的语言并不是不充分,而是应用成本的问题。 c语言不支持面向对象,但也产生了像unix和linux这样伟大的软件。 但其实编程思想是相通的,linux内核中很多地方都使用面向对象的编程思想。 不过,虽然实现起来有一定的难度和门槛,但Java提供的抽象机制降低了这一门槛。

封装的本质是信息隐藏,信息隐藏的初衷是将易变代码与不频繁更改代码分开,以控制代码更改的影响面。

继承:继承的目的是复用代码。 有了封装,就有了类和对象机制,可以将一些数据和行为封装到另一个类中,但问题仍然存在。 如果有几个类有类似或共同的行为,就需要做很多重复的工作。 为了解决这个问题,Java提出了继承的概念。

继承现有类型后,将生成复制基类接口的新类型以及父类的所有成员的子类型对象,可以在父类型变量中引用,但不能相反。

若要区分子类和父类,Java术语中的“覆盖”(overriding )是指如何直接将新方法和成员变量添加到子类中,以及改变现有父类的行为。

多态性:多态性的建议是为了复用解决方案和逻辑,实现良好的可扩展性。

Java的多态性依赖于接口来实现,定义面向接口编程的接口

可以有多个具体的实现类,如果以后添加新的实现类,则不会影响使用此接口的业务逻辑。 最典型的例子是绘图示例。 定义generic接口,然后创建的方法处理泛化的类型而不是具体的类型。 这样,以后添加新类型时就不用改变原始业务逻辑了。

在Java中多态的实现是运行时绑定

——编译器不知道将执行哪个实现类的代码。 编译器生成对特定函数名称的调用,并在运行时将该调用解析为特定代码的地址。

参考答案

面向对象理论的三个基本概念:封装、继承、多态知识点已经梳理完毕,这里在OOP方面亟待深入提出建议。 面向对象是一个很好的编程范式,但你拿着锤子什么也看不见钉子。 有必要扩大视野。 这几年非常受欢迎的函数式编程范式是值得学习的编程范式。 他以与面向对象不同,函数作为一等公民,对函数的调用没有副作用为卖点。

让我们回到面向对象的学习上来。 OOP学习结束后,你可以学习OOD,然后做很多项目。 做了很多项目后,你有机会沉淀很多经验和固定的模子。 这就是设计模式,也值得学习。

在准备了基本的理论、设计模式之后,应对初级的Java面试就可以了,但是我们可以进一步扩展。 设计模式是类型对代码级别的总结。 如果将场景扩大到体系结构级别,就需要看到体系结构模式。 我以前写过总结常见架构模式的文章。 最后,请注意,空学理论没有任何作用。 请务必在项目中应用。 否则,是眼睛中毒,不值得。

体系结构模型、设计模型都属于技术范畴,仅靠基本的OOP和OOD还不足以应对更复杂的业务场景。 此时需要使用DDD (域驱动设计)。 域驱动设计是为了解决复杂和常见的问题而产生的。 当然,场面可能更复杂。 例如,我们要想平台化,就需要进一步抽象。 是所谓领域的领域。 这很深,是我努力的方向。

请再积极一点

我们有故事

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。