面向对象编程思想

在逆战期间,本篇文章是分享面向对象编程的思想。

首先,面向对象是一种编程思想,核心是对象,程序就是一系列对象的集合,程序负责控制调度这些对象来完成任务。

基本思路就是,创建一个对象,给这个对象,添加上属性和属性值,还有函数等方法,之后通过操作这个对象,来完成需要的效果。

 简单来说呢,面向过程 就是自己独立的一步一步的完成程序的定义和执行。而面向对象就是有封装好的面向对象的程序,直接调用执行就可以了,功能和作用类似于封装好的函数,但是 封装的语法和思想与函数不同。

(1) 面向对象编程的优点:(优点与函数的优点类似) 

         优点:主要在于代码的重复使用上或者就是维护性上。

(2)面向对象编程的原则是:

高内聚 : 简单来说,就是板块内部,也就是一个函数内部里边是环环相扣的;

        低耦合 :  方法和方法之间的耦合度要低,不应该是互相牵制,互相牵连的。

(3)面向对象编程的特点

           抽象 --- 通过描述 对象 共有的特点(属性和属性值) , 来形容一个对象,这个对象不是一个非常具体事例的内容,是一个抽象化的实例。 例如,制作饺子,制作包子,制作馅饼,制作馅窝头。

          封装 --- 将所有的程序,都定义在一个对象中

(4)面向对象编程的要素:

  类:  创建一类具有相同特征的对象的模板,是计算机当中对于对象的抽象;

  对象: 一切皆对象, 凡是具有状态和行为的实体;

  属性: 属性对应着对象的状态, 是计算机里面表示对象的状态的数据结构;

  方法: 方法对应着对象的行为, 是计算机对对象的行为的一种抽象, 是处理业务逻辑的关键所在;

 构造方法: 构造方法是创建对象时所调用的方法;

  继承: 继承的主要目的是实现方法的多态性和代码的可重用性;

 多态: 多态是为了解决现实生活中的情况的多样性问题, 根据不同的条件, 做出对应的动作;

 封装: 封装就是把属性和方法封装到一个类中, 通过方法来修改和执行业务, 有利于后期的修改和维护;

例如:

先通过一个函数的方法,来创建对象

        function createObj(){

            // 创建对象

            const obj = {};

            // 给对象添加属性和属性值

            obj.name = '张三';

            obj.age = 18;

            obj.addr = '北京';

            obj.sex = '男';

            // 给对象添加方法

            obj.funNameAge = function(){

                console.log(this.name , this.age);

            }

            obj.funNameAddr = function(){

                console.log(this.name , this.addr);

            }

            obj.funSexAge = function(){

                console.log(this.sex , this.age);

            }

            obj.funAll = function(){

                console.log(this.name, this.sex , this.age, this.addr);

            }

            // 返回这个创建好的对象

            return obj;

        }

        // 调用函数,函数创建对象,并且作为返回值

        // 变量中存储的就是函数创建的对象

        const obj = createObj();

        // 可以通过调用obj中存储的对方的方法,来实现功能

        obj.funAll();

 

posted @ 2020-04-19 19:57  格子的夏天  阅读(136)  评论(0)    收藏  举报