PO(Procedure Oriented,面向过程)。
面向过程是一种按步骤一步步解决问题的编程思想。
如要完成做菜的任务,需要按顺序完成以下几步:
(1)洗菜
(2)切菜
(3)炒菜
一步一步执行,最终完成任务,这就是面向过程的思想。
OO(Object Oriented,面向对象)。
面向对象将事物都看成对象,将具有相同特征的实物看作类。通过对类与对象的继承,封装,多态的实现,完成模拟现实从而决绝问题。

现实中的事物具有一定的属性和行为,如一只白猫有毛,胡须等(属性),会跳,喝水,吃(行为),我们将所有的猫(黑猫,白猫,花猫等)看作一个类。这里的各种猫是具有相同属性和行为的一个集合,我们将这个集合成为抽象数据类型(ADT)。对应到编程中,我们将具体的一只白猫看作一个对象,将所有的猫看作一个类。猫的属性对应为成员变量,行为对应为成员方法。我们吧通过类创造出的一个具体的对象叫类的实例化。
封装:通俗的说就是该给谁看的给谁看,在访问权限上进行限制。
比如人这个类实例化出一个对象小明,小明有一个属性,有钱。另一个人小张想问小明借钱。对应现实情况,小张只能问小明借,而不能直接拿小明的钱,小张也不能知道小明到底有多少钱。在这里就要将“钱”这个属性进行封装,使得只有小明自己才能看到或者拿出钱,而别的对象就不可以看到小明自己的私有信息。
继承:简单的说是为了实现代码的复用性。
假设所有动物都会吃饭喝水。如果实现一个代码,表示所有的猫类会喝水吃饭,以后再实现鸡类,鸭类,鹅类等等都会吃