学习es6笔记(一)面向对象和面向过程

面向过程:就是分析出解决问题需要那些过程和步骤,在用函数实现这些步骤,最后在一步一步的调用这些步骤。它是以步骤来划分问题,性能比较高,容易与硬件相配合,比如单片机。但不够灵活,不太容易维护。他写出来的像蛋炒饭

面向对象:分析出解决问题需要哪些对象,再写出这些对象的功能,最后在由对象间的合作与分工来解决问题。它是以对象功能来划分问题,具有封装性,继承性和多态性。比较灵活,容易维护,代码可复用,更适合大型开发,但性能比较低,易扩展。这个像盖浇饭

面向对象的思维特点:

1.抽取(抽取公用的属性和组织,形成公用模板,封装成类)

2.对类进行实例化,获取类的对象

对象:是一组无序的相关属性和方法的集合,比如字符串,数组,数值,函数等,万物都是对象。(具体的事务)

对象是由:

1.属性(事物的特征,比如颜色)

2.方法组成(事物的行为,比如发短信)

类抽取了公共部分,它是泛指大类

对象是特指的某一个,通过类实例化具体一个对象。

类必须使用new来实例化对象

例:


class app {

  console.log(213213)

}

const temp = new App()

类constructor构造函数

constructor()是构造函数的默认方法,用于传递参数和返回实例对象,通过new时生成对象实例时自动调用该对象。如果没有它会自动生成。

示例:


class star {

  constructor(username ) {

      this.username = username

  }

}

let ldh = new star()

console.log(ldh.username)

vue ts版本


export default class star {

    private username: string;

    private age:string;

    constructor(username:string, age: string) {

        this.username = username

        this.age = age

    }

    sayFunction(song: string){

        console.log(this.username + song)

        return song

    }

}

调用

import star from '@/utils/cs'

let ldh = new star('了的话', '11')

console.log(ldh.sayFunction('3123123'))

你可能感兴趣的:(学习es6笔记(一)面向对象和面向过程)