File tree Expand file tree Collapse file tree 3 files changed +195
-197
lines changed
Expand file tree Collapse file tree 3 files changed +195
-197
lines changed Original file line number Diff line number Diff line change @@ -18,14 +18,26 @@ head:
1818
1919### 面向对象和面向过程的区别
2020
21- 两者的主要区别在于解决问题的方式不同:
21+ 面向过程编程(Procedural-Oriented Programming,POP)和面向对象编程(Object-Oriented Programming,OOP)是两种常见的编程范式, 两者的主要区别在于解决问题的方式不同:
2222
23- - 面向过程把解决问题的过程拆成一个个方法,通过一个个方法的执行解决问题。
24- - 面向对象会先抽象出对象,然后用对象执行方法的方式解决问题。
23+ - ** 面向过程编程(POP) ** : 面向过程把解决问题的过程拆成一个个方法,通过一个个方法的执行解决问题。
24+ - ** 面向对象编程(OOP) ** : 面向对象会先抽象出对象,然后用对象执行方法的方式解决问题。
2525
26- 另外,面向对象开发的程序一般更易维护、易复用、易扩展。
26+ 相比较于 POP,OOP 开发的程序一般具有下面这些优点:
2727
28- 相关 issue : [ 面向过程:面向过程性能比面向对象高??] ( https://github.com/Snailclimb/JavaGuide/issues/431 ) 。
28+ - ** 易维护** :由于良好的结构和封装性,OOP 程序通常更容易维护。
29+ - ** 易复用** :通过继承和多态,OOP 设计使得代码更具复用性,方便扩展功能。
30+ - ** 易扩展** :模块化设计使得系统扩展变得更加容易和灵活。
31+
32+ POP 的编程方式通常更为简单和直接,适合处理一些较简单的任务。
33+
34+ POP 和 OOP 的性能差异主要取决于它们的运行机制,而不仅仅是编程范式本身。因此,简单地比较两者的性能是一个常见的误区(相关 issue : [ 面向过程:面向过程性能比面向对象高??] ( https://github.com/Snailclimb/JavaGuide/issues/431 ) )。
35+
36+ ![ POP 和 OOP 性能比较不合适] ( https://oss.javaguide.cn/github/javaguide/java/basis/pop-vs-oop-performance.png )
37+
38+ 在选择编程范式时,性能并不是唯一的考虑因素。代码的可维护性、可扩展性和开发效率同样重要。
39+
40+ 现代编程语言基本都支持多种编程范式,既可以用来进行面向过程编程,也可以进行面向对象编程。
2941
3042下面是一个求圆的面积和周长的示例,简单分别展示了面向对象和面向过程两种不同的解决方案。
3143
You can’t perform that action at this time.
0 commit comments