第一个原因是 OOP 结构很复杂

面向对象之前的编程语言的结构都比较简单,只要掌握了运算符、全局变量、局部变量、条件分支、循环和子程序(或函数),基本上就可以理解这些编程语言的结构了。这些编程语言都是直接访问 CPU 和内存的结构,因此,我们想象一下计算机的动作就很容易理解它们。

而 OOP 中增加了许多结构,基本的结构就有类、实例、实例变量、方法、构造函数、继承、超类、子类、多态、包、异常和垃圾回收等(图1-2),其中的许多结构很难让人想象其在计算机中的动作,因此,编程新手需要花费很长时间来理解并熟练使用所有的结构。

{%}

图1-2 OOP 中包含许多结构