ES6类
作者:互联网
# 面向对象和面向过程编程
1.面向过程:看步骤
2.面向对象:看对象,封装性,继承性,多态性。
在javascript中,对象是一组无序的相关属性和方法的集合。 类是泛指的一大类,对象是通过类实例化得到的一个具体对象。
# 声明类 1.constructor是构造函数,在new时会自动调用。 2.类里面的方法不需要加function关键字。 3.多个函数和方法之间不需要加逗号。 ~~~html //1.声明类 class Star { constructor(uname,gae){ this.name = uname; this.age = age; }
sing(){ conlose.log('唱歌'); } }
//2.创建类 var = new Star('刘德华',18);
~~~
# 类的继承 1.采用super可以调用父类的constructor,父类的方法只能从父类的condtructor里面调用方法. 2.就近原则:儿子里面有需要的方法,有则不再去父类里面查找。可以直接通过super.方法名直接调用父类的普通方法。 3.儿子可以在父亲的基础上扩展新的方法。需要通过super调用父类的构造函数。super必须在子类之前调用。 ~~~html class Father { constructor(uname,uage) { this.uname = uname; this.uage = uage; } sum(){ console.log(this.uage); } } class Son extends Father { constructor(uname,uage){ //调用父类的构造函数 super(uname,uage); this.uname = uname; this.uage = uage; } } var son = new Son(1,2); son.sum(); ~~~ 4.ES6里面类没有没有变量的提升,因此先要有类才能实例化类。类里面的共有属性和方法,必须加this. 5.类里面的this指向,方法里面指向的是方法的调用者,constructor指向实例化对象
在javascript中,对象是一组无序的相关属性和方法的集合。 类是泛指的一大类,对象是通过类实例化得到的一个具体对象。
# 声明类 1.constructor是构造函数,在new时会自动调用。 2.类里面的方法不需要加function关键字。 3.多个函数和方法之间不需要加逗号。 ~~~html //1.声明类 class Star { constructor(uname,gae){ this.name = uname; this.age = age; }
sing(){ conlose.log('唱歌'); } }
//2.创建类 var = new Star('刘德华',18);
~~~
# 类的继承 1.采用super可以调用父类的constructor,父类的方法只能从父类的condtructor里面调用方法. 2.就近原则:儿子里面有需要的方法,有则不再去父类里面查找。可以直接通过super.方法名直接调用父类的普通方法。 3.儿子可以在父亲的基础上扩展新的方法。需要通过super调用父类的构造函数。super必须在子类之前调用。 ~~~html class Father { constructor(uname,uage) { this.uname = uname; this.uage = uage; } sum(){ console.log(this.uage); } } class Son extends Father { constructor(uname,uage){ //调用父类的构造函数 super(uname,uage); this.uname = uname; this.uage = uage; } } var son = new Son(1,2); son.sum(); ~~~ 4.ES6里面类没有没有变量的提升,因此先要有类才能实例化类。类里面的共有属性和方法,必须加this. 5.类里面的this指向,方法里面指向的是方法的调用者,constructor指向实例化对象
标签:ES6,方法,uname,uage,constructor,父类,super 来源: https://www.cnblogs.com/polarisDai/p/16518599.html