面向过程,当需要实现一个功能的时候,每一个具体的步骤都要亲力亲为,详细处理每一个细节。
面向对象,当需要实现一个功能的时候,不关心具体的步骤,而是找一个已经具有该功能的人,来帮我做事。
实例:
public static void main(String[] args) {
int[] array = {10 ,20 ,30 ,40 ,50};
//要求打印格式为:[10 ,20 ,30 ,40 ,50]
//使用面向过程,每一个步骤细节都要亲力亲为
System.out.print("[");
for (int i = 0; i < array.length; i++) {
//如果是最后一个不要打印","号
if(i==array.length-1){
System.out.println(array[i]+"]");
}
//如果不是最后一个,中间要用","拼接,不换行
else{
System.out.print(array[i]+", ");
}
}
System.out.println("============");
//使用面向对象
//找一个JDK给我们提供好的Arrays类,其中一个toString方法,
//直接把数组变成我们想要的格式
System.out.println(Arrays.toString(array));
}
运行结果:
[10, 20, 30, 40, 50] ============ [10, 20, 30, 40, 50]
举例
洗衣服:
- 面向过程:把衣服脱下来--找一个盆--放点洗衣液--加点水--浸泡10分钟--清洗衣服--拧干--晾起来
- 面向对象:把衣服脱下来--打开全自动洗衣机--把衣服放进洗衣机--按钮启动--晾起来
区别:
- 面向过程:强调步骤
- 面向对象:强调对象[就是找一个干事的],这里的对象就是洗衣机
面向对象思想是一种符合我们思考习惯的思想,它可以将复杂的事情简单化,并将我们从执行者转换成指挥者,面向对象的语言中,包含三大基本特征,即封装、继承、多态。