一、从解决问题的方向上来看面向过程和面向对象?
要想讲清楚什么是面向对象,就不得不提面向过程,它们是两种不同的处理问题的角度
面向过程更注重事情的每一个步骤及顺序,面向对象更注重事情有哪些参与者(对象),以及各自需要做些什么
以洗衣机洗衣服这件事为例,
面向过程会将任务拆解成一些列的步骤(函数),1.打开洗衣机-------》2.放衣服----》3.放洗衣粉-------》4.清洗----------》5.烘干
面向对象会拆出人和洗衣机两个对象:
人: 打开洗衣机 放衣服 放洗衣粉
洗衣机: 清洗 烘干
从这个例子不难看出,面向过程比较直接高效,而面向对象更易于复用、扩展和维护
二、面向对象的三大特性
封装: 封装的意义,在于明确标识出允许外部使用的所有成员函数和数据项
内部细节对于外部调用透明,外部调用无需修改或者关心内部实现
- javabean的属性私有,提供get和set方法供外部访问,因为属性的赋值或者获取逻辑只能有JavaBean本身决定。而不能有外部胡乱修改
private String name;
pub