面向对象:(编程思想)

编程思想的概念引入
        面向:看、关注、瞅
        对象:个体、实体、实例、结果

使用到代码中:
        将整个项目拆分为一个一个的模块,然后肢解成为一个一个的功能(行为、方法),
        在设计每一个功能之前,我们先找是否有已经存在该行为的类,
        如果有我们就先创建这个类的对象,然后通过对象调用方法完成我们的需求
        如果没有我们就先设计方法,然后在进行方法的调用完成需求;
        在这种变成思想的驱动下,我们程序员就从一个劳动者转变为了一个实实在在的指挥者

面向过程:(编程思想)

面向:看、关注、瞅
过程:经过、经历、从头到尾

使用到代码中:
        将整个项目拆分为一个一个的模块,然后肢解成为一个一个的功能(行为、方法),
        从功能的设计,代码的实现,到最后功能的调用,我们程序员都亲力亲为;
        整体下来我们程序员就是一个实实在在的劳动者

思考:
        在之后的学习和开发环境下,我们是不是只需要使用面向对象的思想进行编程就可以了?

不行的,应该是面向对象和面向过程结合起来的。

使用面向对象和面向过程的思想解决生活的某些现象

现象一:
        使用面向过程的思想解决吃饭的问题?

步骤如下:
        1).思考吃什么?
        2).去菜场买菜
         3).挑菜(货比三家、针对性砍价)
        4).回家
        5).摘菜
        6).切菜
        7).洗菜
        8).炒菜
        9).焖饭
        10).吃饭
        11).洗刷

使用面向对象的思想解决吃饭的问题?

步骤如下:
        1).思考吃什么?
        2).去饭店:
                ①.我们使唤服务员(对象),调用其点菜功能
                ②.服务员将菜品告知后方大厨,大厨做菜ing...
                ③.大厨使唤服务员(对象),调用服务员的上菜功能
        3).开始吃饭
        4).结账(多种支付方法)

现象二:
        使用面向过程的思想解决买电脑的问题(组装机)

步骤如下:
        1).上网查阅一些配置参数
        2).去电脑城
        3).挑选配件(货比三家)
        4).回家做一下功课
        5).去付钱
        6).安装硬件设备、安装系统和应用软件
        7).自己扛电脑回家
        8).自己LOL

使用面向对象的思想解决买电脑的问题(组装机)

步骤如下:
        1).找一个懂电脑的老手(对象),比如老郭;
                将需求告知他
        2).将钱给到老郭,坐等老郭凯旋归来
        3).最终老郭扛电脑回你家,一起LOL

面向对象思想的场景演练

场景一:
        大象装进冰箱

名词动词提炼法
名词:大象、冰箱
动词:装

伪代码:

步骤一:设计类(花费大量时间)

class 大象{
    
        }

class 冰箱{
                开开(){}
                装(大象 dx){}
                装(猴子 hz){}
                关闭(){}
        }

步骤二:创建对象/实例化对象(一行代码搞定,但是内存很复杂)

大象 dx = new 大象();    //大象对象
        冰箱 bx = new 冰箱();    //冰箱对象

步骤三:通过对象调用方法完成需求

bx.开开();
        bx.装(dx);
        bx.关闭();

场景二:
        猫抓老鼠

名词:猫、老鼠
        动词:抓

步骤一:设计类
        class 猫{
                看(老鼠 ls){
                        ls.看(this);
                }
                抓(老鼠 ls){
                        ls.逃();
                }
                吃(老鼠 ls){
                        ls.叫();
                }
        }

class 老鼠{
                看(猫 mao){}
                逃(){}
                叫(){}
        }

步骤二:创建对象

猫 tom = new 猫();
        老鼠 jerry = new 老鼠();

步骤三:对象调用方法完成需求

tom.看(jerry);
        tom.抓(jerry);
        tom.吃(jerry);

场景三:
        红色的车正在飞速的行驶,然后停了

伪代码:

名词:车
        动词:行驶、停止

步骤一:设计类

class 车{
                //属性(成员变量)
                //描述事物的特征
                字符串 颜色;
                字符串 品牌;
                字符串 车牌;
                浮点型 单价;

//方法(成员方法)
                //描述事物的行为
                行驶(){}
                停止(){}
          }

步骤二:创建对象
步骤三:对象调用功能完成需求

将以上的伪代码变成有效代码  ===>>>  参看考过的Car.java、TestCar.java

从上述代码中的收获

总结:收获
1).根据需要可以创建多个对象
2).每个对象中的属性是彼此独立的,互补干扰
3).只要是某个类型的对象,创建了多个,那么这多个对象都能调用这个类型中的方法和属性

面试题: 谈一谈你对面向对象编程思想的理解?相关推荐

  1. java面向对象编程思想的理解

    1.我们总说java是一门面向对象编程的语言,那什么是面向对象呢? 我是这样理解的,对象是事物存在的实体,如,猪.狗,花早等都是对象,对象由两部分组成.面向对象编程的三大特点:继承,多态,类是封装对象 ...

  2. java面向对象编程的思想_java面向对象编程思想的理解

    1.我们总说java是一门面向对象编程的语言,那什么是面向对象呢? 我是这样理解的,对象是事物存在的实体,如,猪.狗,花早等都是对象,对象由两部分组成.面向对象编程的三大特点:继承,多态,类是封装对象 ...

  3. java面向对象编程思想_Java面向对象编程思想的理解

    1.我们总说java是一门面向对象编程的语言,那什么是面向对象呢? 我是这样理解的,对象是事物存在的实体,如,猪.狗,花早等都是对象,对象由两部分组成.面向对象编程的三大特点:继承,多态,类是封装对象 ...

  4. 面向对象编程思想的理解

    面向对象 什么是面向对象编程 (一:了解) 面向对象编程(OOP)是一种编程思想,这里借助面向过程和面向对象对比进行理解.比如你打算吃蛋炒饭,可以自己做或者去饭店吃. 可以看出 面向对象 和 面向过程 ...

  5. 浅谈对java编程思想的理解

    浅谈对java编程思想的理解 刚从学校毕业的时候,对于这种概念的理解少之又少 ,只是单纯的从事编码工作,理解也只是停留在对java基本概念的使用上,很局限!随后工作了快三年的时间里,自己不断的理解这种 ...

  6. CoreJava学习第五课 --- 进入第二阶段:面向对象编程思想

    面向对象编程思想 1.面向过程 ​ 从计算机执行角度出发 ,代码执行过程核心为从程序的运行过程出发,构建编程思路,例: 哥德巴赫猜想 // 面向过程1 用户输入一个数n2 验证数字的正确性2.1 正确 ...

  7. 面向对象编程思想概览(一)类和对象

    一.简介 生活中有许多技巧值得我们在程序设计中模仿和借鉴.采用类的思想可以方便地把具有相同属性和方法归为一类,从而简化编程.本讲利用生活的常见示例,浅显通俗的语言,生动地介绍了面向对象编程中类与对象的 ...

  8. python完全支持面向对象编程思想_面向对象的编程思想和Python的类,访问和属性,继承...

    本文将从访问限制,属性,继承,方法重写这几个方面继续介绍面向对象的编程思想和Python类的继承. 复制代码 一.访问权限: Python中在类的内部定义属性和方法,在类的外部是可以直接调用或进行访问 ...

  9. 面向对象编程思想概览(三)继承

    一.简介 本讲以大家耳熟能详的<西游记>中的唐僧师徒四人为例,介绍了类的继承的概念和实现方法,总结了继承的特性和优点,帮助同学们理解面向对象编程中继承的用法,进而掌握面向对象程序设计的基本 ...

最新文章

  1. 另类无法在ESXi上添加存储器故障
  2. hihoCoder1040 矩形判断
  3. 计算机应用基础dos,计算机应用基础2(带答案)
  4. ITK:用高斯核计算平滑
  5. C语言实现组织图kohone/topology算法(附完整源码)
  6. 剑指offer 66题 -- 删除链表中重复的节点
  7. zsh命令行界面/zsh终端界面粘贴卡顿的问题
  8. 动态数组相关操作 0104 ArrayList
  9. ASP.NET Core 中间件Diagnostics使用 异常和错误信息
  10. 「管理数学基础」4.3 模糊数学:模糊关系与模糊矩阵、模糊关系的运算与合成、模糊等价关系
  11. 通过分析等待类型解决系统产生问题
  12. 转)TNS协议--翻译自《The Oracle Hackers Handbook》
  13. c语言头文件下载微盘,c语言头文件下载 C语言头文件大全.doc
  14. ArcGIS Server 基于Token密匙
  15. JavaEE中的依赖性——依赖查找
  16. 链游新玩法:传奇4的感悟
  17. 综合素质计算机的知识考点,综合素质常识考题
  18. OpenStack T版服务组件--Keyston身份服务
  19. 现在电脑有必要安装360或者腾讯电脑管家吗?
  20. oracle 物化视图没效果,物化视图失效的几种情况及测试

热门文章

  1. MySQL重命名表(RENAME TABLE语句)
  2. APP跳转应用商店“求个好评“,“去评价“等,实现不同手机品牌跳转对应的应用平台
  3. JAVAJSP婴幼儿用品销售系统JSP母婴用品购物系统JSP儿童玩具JSP网购系统儿童JSP玩具销售JSP商场销售系
  4. vercel+vue生成免域名静态网站
  5. Ubuntu单系统安装
  6. 喜大于忧!SteamDeck游戏掌机真实游戏与性能体验报告
  7. JetSon TX1配置问题记录
  8. 学生暑假游戏笔记本电脑
  9. mysql 根据查询结果集更新数据
  10. python画地图柱状图_Python数据分析绘图库,pyecharts绘制各类地图