首页 > 编程知识 正文

面向对象需要数据流图吗,面向对象知识表示有什么特点

时间:2023-05-05 13:00:18 阅读:116768 作者:2223

文章目录面向对象(OOP )面向过程与面向对象的区分面向对象三大特性五原则面向对象三大特性五基本原则总结

面向对象(OOP )概述

自从我们开始接触Java这种语言之后,就有人说这是面向对象的语言。 最多的是new个对象,但其实不知道对方是什么。 我以为对象是class (班级),不认为是什么特别的事情。 很久以后,面试官问了OOP是什么,嘴巴都是一个大o,OOP吗? WTF? 那个人讨厌的是面向对象编程。 我说:“Java是面向对象的。 一切都是以对象为载体,编程,面对。 面试官: go out! 不!

回来的我赶紧看看什么是OOP,对象定向编程。 本来就是面向对象编程啊。 另外,还有OOD (面向对象设计)、OOA (面向对象分析)。 什么是面向对象? 要理解这个问题,首先必须理解面向过程。 这样,和我们相比就更容易理解了。

传统的编程是面向过程的,例如实现算术运算1=2,就可以用该简单算法解决问题。 但是,随着时代的发展,人们不再满足于现有的算法。 因为问题越来越复杂了,所以不像1 1那么简单。 例如,在一个班级学生的数据分析中,有对象的概念,所有的东西都是对象。 重点是将现实的东西抽象化,注意抽象这个词。 将现实中的事物和关系抽象到班级中,通过继承、实现、组合来获得万事万物。 实现了现实世界的抽象和数学建模。 这是一个飞跃的进步。

举最简单的例子来区分面向过程和面向对象

如果有一天想吃鱼香肉丝,该怎么办? 你有两个选择

1、自己买材料、肉、鱼香肉丝调料、蒜苔、胡萝卜等,切菜切肉,炒熟,盛盘。

2、去酒店,张开嘴巴:老板! 请给我鱼香肉丝!

知道区别了吗? 1是面向过程的,2是面向对象的。

面向对象有什么优点? 首先,我们不需要知道鱼香肉丝是如何降低结合性的。 突然不想吃鱼香肉丝的话,我想吃洛阳白菜,至于1可能不简单。 另外,需要重新买菜,买调味料。 相对于2,太简单了,“老板! 那鱼香肉丝换洛阳白菜吧。 维护性提高了。 总的来说,降低联轴器,提高维护性!

面向过程是具体化的,流程化的,解决一个问题,你需要一步一步的分析,一步一步的实现。

面向对象是模型化的,你只需抽象出一个类,这是一个封闭的盒子,在这里你拥有数据也拥有解决问题的方法。需要什么功能直接使用就可以了,不必去一步一步的实现,至于这个功能是如何实现的,管我们什么事?我们会用就可以了。

面向对象的根基其实还是面向过程的,把面向过程抽象成类,封装起来,方便我们使用的就是面向对象。

面向过程和面向对象的区别面向过程

优点:性能优于面向对象。 因为类调用时需要实例化,所以开销大,消耗资源。

缺点:文静的泥猴桃,难以复用,不易扩散

面向对象

优点:安静的龙珠,容易重用,容易扩展。 面向对象具有封装、继承、多态的特性,可以设计低耦合的系统,便于系统的灵活性、维护

缺点:性能比面向过程差

面向对象的三大特性五原则

面向对象的三个特性1,包

隐藏对象的属性和实现细节,仅向外部提供公共访问方式,隔离变化,易于使用,提高重用性和安全性。

2、继承

代码复用性的提高继承是多态性的前提。

3、多态性

父类或接口定义的引用变量可以指向子类或具体实现类的实例对象。 提高了程序的可扩展性。

五大基本原则单一职责原则SRP (单一响应打印机) )。

班级功能必须单一,不能包罗万象,就像杂货店一样。

开放策略关闭打印机(OCP ) )。

一个模块对扩展开放,对修改封闭,想增加功能热烈欢迎,想修改,哼,一万个不愿意。

里式置换原则LSP (theliskovsubstitutionprinciplelsp ) ) ) ) ) ) ) ) )。

子类可以用父类替换父类可以存在的位置。 例如,你可以代替爸爸去祖母家工作。 哈哈~ ~

倒置原则依赖置换原则dip (thedependencyinversionprincipledip )

高层次的模块不应该依赖于低层次的模块,而应该依赖于抽象。 抽象不应该依赖具体实现,具体实现应该依赖抽象。 你出国说你是中国人,就不能说你是哪个村子的人。 例如中国人是抽象的,下面有具体的xx省、xx市、xx县。 你依赖的抽象是中国人,不是你xx村的。

分离原则ISP (theinterfacesegregationprincipleisp )。

与特定客户类相关的多个接口比使用通用接口更好。 例如,有给一个手机打电话、看视频、玩游戏的功能,把这些功能分成不同的接口要比在一个接口上好得多。

总结抽象使复杂的问题更加简单。 从以前的面向过程的执行者变成了开口的指挥者。 面向对象适合人的思维,面向过程是机器的思想

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