面向对象思想|8月更文挑战

189 阅读2分钟

这是我参与8月更文挑战的第15天,活动详情查看:8月更文挑战

一、什么是面向过程

面向过程,就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用时依次调用即可。

/**
将大象装进冰箱,面向过程是如何解决这个问题的呢?
    1. 打开冰箱门(函数1)
    2. 将大象装进冰箱(函数2)
    3. 关闭冰箱门(函数3)
*/
#include <stdio.h>

int main()
{
   printf("第一步:打开冰箱门 \n");
   printf("第二步:将大象装进冰箱 \n");
   printf("第三步:关闭冰箱门 \n");
}

二、什么是面向对象

面向对象,相对于面向过程来说,强调的是对象,万事万物皆对象。每一个对象都有自己的属性和行为。强调的不在是过程,专职专事
将大象装进冰箱,面向对象是如何解决这个问题的呢?

1. 分析问题,抽对象。
   对象:大象、冰箱
2. 分析出每个对象的属性和行为。
   大象:将自己装进冰箱
   冰箱:开冰箱门;关冰箱门
// 冰箱
public class Refrigerator {
    public void open() {
        System.out.println("打开冰箱门");
    }

    public void close() {
        System.out.println("关闭冰箱门");
    }
}
// 大象
public class Elephant {
    public void enter() {
        System.out.println("大象走进冰箱");
    }
}

调度的基本单位是对象,而不再是函数

public class Test {
    public static void main(String[] args) {
        Refrigerator refrigerator = new Refrigerator();
        Elephant elephant = new Elephant();

        refrigerator.open();
        elephant.enter();
        refrigerator.close();
    }
}

总结

  1. 面向对象,基本单位是对象。那么什么是对象?万事万物皆对象,每个对象都有自己的属性和行为,比如:老师、学生、大象等。
  2. 面向过程,基本单位是函数。是通过分析问题得出步骤,根据步骤一步一步解决问题。
  3. 面向对象像是世界上各种各样的资源,面向过程更像是对各个资源的整合使用,落地实现。