JS 面向对象

 

创建类 

语法:class 类名 {属性和方法} 构造函数的语法糖 首字母需要大写   

抽取公共属性和方法  创建一个类  

new把函数变成了一个对象  Star就是一个函数

  

构造函数

属性:放到constructor 构造函数里面   类里面不需要写function关键字   

属性和方法放到类里面 需要用到constructor 构造器    

构造函数的主要作用:接收一个参数  返回实例对象  new的时候主动执行 放一些公共属性

constructor 是构造函数的默认方法  用于传递参数 返回实例对象  通过new命令生成实例对象时 自动调用该方法
this代表当前实例化的对象 谁new就代表谁

  

 

类添加方法

创建一个类 里面有公共属性和方法  公共属性写在constructor里面   方法写在后面 方法之间不用逗号隔开

类中的公共属性 调用方法 都需要用到this

 

 

 

类的继承

子类继承父类需要用到textends关键字继承父类   继承父类的属性和方法需要使用super关键字 

当子类中的属性和父类一样时  可以不写constructor构造属性  直接调用父类的即可

当子类中没有construcotr时  可以随意使用父类的 如果子类也有   constructor会返回实例 this指向不同  不可以在使用父类的东西

在子类构造函数中使用super  必须放在this前面  如果子类也有相同的属性 会优先指向子类 就近原则

super 调用父类的属性和方法  查找方法和属性为就近原则 

 

在es6中没有变量提升 需要创建类  通过类实例化对象

在类中的公共属性和方法需要添加this使用

this的指向问题

constroutor里面的this指向实例对象    方法里面的this 指向这个方法的调用者

 

类和对象

类泛指

对象:类里面的具体实例    创建类:class类名{} new类名  构造函数:属性和方法  继承:extends, super     this:在构造函数中 指向实例对象 在方法里面就是指向调用者

this:当前对象    构造函数:实例对象    类里面的方法:调用者

posted @ 2020-10-14 15:02  随心的笔记  阅读(97)  评论(0)    收藏  举报