• 面向对象的概述


    =============================================================================
    1:面向对象思想
      面向对象是基于面向过程的编程思想。

      面向过程:强调的是每一个功能的步骤,有很多很多方法组成,这些方法相互调用,完成需求。
      面向对象:强调的是对象,然后由对象去调用功能。

      面向过程:如果做小的项目,则效率非常高,很快就能实现,但是后期维护非常麻烦。
      面向对象:如果做大的项目,则效率相对会低,但是代码结构性很好,后期维护容易。从这个方面来说,效率反而提高了。
    -----------------------------------------------------------------------------
    2:面向对象的思想特点:
      A:是一种更符合我们思想习惯的思想
      B:可以将复杂的事情简单化
      C:将我们从执行者变成了指挥者

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

        万事万物皆对象!

        家常事物、买洗衣机和去饭店太不划算了,所以,找个对象
    -----------------------------------------------------------------------------
    3:把大象装进冰箱
      面向过程:
        动作有哪些呢?
          A:打开冰箱门。
          B:装进大象。
          C:关闭冰箱门。

    代码体现:

    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("关闭冰箱门");
        }
    }

    ---------------------------------------
      面向对象:
        我们怎么才能更符合面向对象思想呢?
          A:有哪些类呢?
          B:每个类有哪些东西呢?
          C:类与类之间的关系是什么呢?

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

    代码体现:

    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) {
            冰箱类调用开门方法
            大象类调用进去方法
            冰箱类调用关门方法
        }
    }

    -----------------------------------------------------------------------------
    4:面向对象的开发、设计、特征
      面向对象的开发
        就是不断的创建对象,使用对象,指挥对象做事情。

      面向对象的设计:
        其实就是在管理和维护对象之间的关系。设计的好与不好,就在于分析类与类之间的关系和关联是否良好。

      面向对象的三大特征:
        封装(encapsulation)
        继承(inheritance)
        多态(polymorphism)
    =============================================================================

  • 相关阅读:
    jquery 自执行笔记
    快速搭建动态web工程并且进行数据库交互页面呈现
    仿途牛导航
    一些jquery技巧
    Jquery 事件冒泡 以及阻止默认事件
    absolute(绝对定位)和 relative(相对定位)
    java 日期格式转换,加减等
    StringTokenizer 简单的描述
    运算符和表达式
    Eclipse常用命令+ 简单的自动售票程序
  • 原文地址:https://www.cnblogs.com/chenmingjun/p/8436704.html
Copyright © 2020-2023  润新知