1
0
mirror of https://github.com/Snailclimb/JavaGuide synced 2025-06-25 02:27:10 +08:00

add : issue

This commit is contained in:
Kou Shuang 2019-08-18 18:18:19 +08:00
parent 1ee3877bb2
commit a6fe08016b

View File

@ -61,9 +61,15 @@
## 1. 面向对象和面向过程的区别 ## 1. 面向对象和面向过程的区别
- **面向过程** **面向过程性能比面向对象高。** 因为类调用时需要实例化开销比较大比较消耗资源所以当性能是最重要的考量因素的时候比如单片机、嵌入式开发、Linux/Unix等一般采用面向过程开发。但是**面向过程没有面向对象易维护、易复用、易扩展。** - **面向过程** **面向过程性能比面向对象高。** 因为类调用时需要实例化开销比较大比较消耗资源所以当性能是最重要的考量因素的时候比如单片机、嵌入式开发、Linux/Unix等一般采用面向过程开发。但是**面向过程没有面向对象易维护、易复用、易扩展。**
- **面向对象** **面向对象易维护、易复用、易扩展。** 因为面向对象有封装、继承、多态性的特性,所以可以设计出低耦合的系统,使系统更加灵活、更加易于维护。但是,**面向对象性能比面向过程低**。 - **面向对象** **面向对象易维护、易复用、易扩展。** 因为面向对象有封装、继承、多态性的特性,所以可以设计出低耦合的系统,使系统更加灵活、更加易于维护。但是,**面向对象性能比面向过程低**。
参见 issue : [面向过程 :面向过程性能比面向对象高??](https://github.com/Snailclimb/JavaGuide/issues/431)
> 这个并不是根本原因面向过程也需要分配内存计算内存偏移量Java性能差的主要原因并不是因为它是面向对象语言而是Java是半编译语言最终的执行代码并不是可以直接被CPU执行的二进制机械码。
>
> 而面向过程语言大多都是直接编译成机械码在电脑上执行并且其它一些面向过程的脚本语言性能也并不一定比Java好。
## 2. Java 语言有哪些特点? ## 2. Java 语言有哪些特点?
1. 简单易学; 1. 简单易学;