前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >为什么大一先要学C语言(面向过程)再学C++或JAVA(面向对象)?

为什么大一先要学C语言(面向过程)再学C++或JAVA(面向对象)?

作者头像
泰斗贤若如
发布2019-06-18 19:03:02
8090
发布2019-06-18 19:03:02
举报
文章被收录于专栏:泰斗贤若如

                        面向对象和面向过程各有千秋

一.面向过程与面向对象对比

面向过程:强调的是每一个功能的步骤,有很多很多方法组成,这些方法相互调用,完成需求。  面向对象:强调的是对象,然后由对象去调用功能。  面向过程:如果做小的项目,则效率非常高,很快就能实现,但是后期维护非常麻烦。 面向对象:如果做大的项目,则效率相对会低,但是代码结构性很好,后期维护容易。从这个方面来说,效率反而提高了。

     面向对象是基于面向过程的编程思想

二.以面向对象为主,对比面向过程说明面向对象的思想特点

世间万物皆对象

       面向对象的思想特点:     

                                      1. 是一种更符合我们思想习惯的思想                                       2. 可以将复杂的事情简单化                                  3. 将我们从执行者变成了指挥者

举例对比:

              买电脑: 面向过程:我先了解电脑-->了解我自己的需求:学习用-->找对应的参数信息-->去中关村买电脑-->讨价还价-->买回电脑。 面向对象:我知道我要买电脑-->班长去给我买-->班长就买回来了。 洗衣服: 面向过程:把衣服脱下-->找一个盆-->放点洗衣粉-->加点水-->把衣服扔进去-->搓一搓-->清洗衣服-->拧干-->晾起来。 面向对象:把衣服脱下-->打开全自动洗衣机-->扔进去-->一键即可-->晾起来。 吃饭: 面向过程:去超市买菜-->摘菜-->洗菜-->切菜-->炒菜-->盛起来-->吃。 面向对象:去饭店-->服务员(点菜)-->厨师(做菜)-->服务员(端菜)--吃。

三.把大象装进冰箱

       面向过程:

分三步:

                            1.打开冰箱门

                            2.装进大象

                            3.关闭冰箱门

代码示例:

代码语言:javascript
复制
class Demo {
    public static void main(String[] args) {
        /*
        System.out.println("打开冰箱门");
        //打开冰箱门的动作,现在仅仅是为了演示,就写了一个输出语句,其实,它可能需要做很多操作。这个时候代码就比较多一些了。
        //假设我要多次打开冰箱门,代码一多,每次都写一遍,麻烦不?
        //我们就应该用方法改进。
        System.out.println("装进大象");
        System.out.println("关闭冰箱门");
        */        
        //写了方法以后,调用就改变了。
        open();
        in();
        close();
    
    public static void open() {
        System.out.println("打开冰箱门");
    }    
    
    public static void in() {
        System.out.println("装进大象");
    }
    
    public static void close() {
        System.out.println("关闭冰箱门");
    }
}

        面向对象:

我们怎么才能更符合面向对象思想呢?         1:有哪些类呢?       2:每个类有哪些东西呢?       3:类与类之间的关系是什么呢?     把大象装进冰箱的分析?(如何分析有哪些类呢?答:名词提取法。)(UML:统一建模语言。) A:有哪些类呢?         大象类         冰箱类         Demo类 B:每个类有哪些东西呢?         大象类:           进去         冰箱类:           开门           关门         Demo类:           main方法 C:类与类之间的关系是什么呢?         Demo类中使用大象类和冰箱类的功能。

代码示例:

代码语言:javascript
复制
class 大象 {
    public static void in() {
        System.out.println("装进大象");
    }
}
            
class 冰箱 {
    public static void open() {
        System.out.println("打开冰箱门");
    }
                
    public static void close() {
        System.out.println("关闭冰箱门");
    }
}
            
class Demo {
    public static void main(String[] args) {
代码语言:javascript
复制
                 冰箱.open();//冰箱类调用开门方法
代码语言:javascript
复制
                 大象.in();大象类调用进去方法
                 冰箱.close();冰箱类调用关门方法 
                } 
              }
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-04-09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  •                         面向对象和面向过程各有千秋
  • 一.面向过程与面向对象对比
    •      面向对象是基于面向过程的编程思想
    • 二.以面向对象为主,对比面向过程说明面向对象的思想特点
      • 世间万物皆对象
        • 举例对比:
          •               买电脑: 面向过程:我先了解电脑-->了解我自己的需求:学习用-->找对应的参数信息-->去中关村买电脑-->讨价还价-->买回电脑。 面向对象:我知道我要买电脑-->班长去给我买-->班长就买回来了。 洗衣服: 面向过程:把衣服脱下-->找一个盆-->放点洗衣粉-->加点水-->把衣服扔进去-->搓一搓-->清洗衣服-->拧干-->晾起来。 面向对象:把衣服脱下-->打开全自动洗衣机-->扔进去-->一键即可-->晾起来。 吃饭: 面向过程:去超市买菜-->摘菜-->洗菜-->切菜-->炒菜-->盛起来-->吃。 面向对象:去饭店-->服务员(点菜)-->厨师(做菜)-->服务员(端菜)--吃。
          • 三.把大象装进冰箱
            •        面向过程:
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档