类的讲解

1: 创建一个person 类:

      类里边有属性和方法: 

      class Person {

         // 构造器方法

         constructor( name, age ) {

            //  构造器中 this 指向:(类的实例对象)   指向创建出来的对象, 

           //  为什么 this 指向的对象: new 关键字会在内存中开辟空间, 这个空间在设置值以后会交给p1 这个变量, 所以P1 就是创建出来对象的代理人, 而空间存在 “this”, 也就是指向p1;

           this.name = name;

           this.age = age;

         }

       //  除了构造器以外的方法: (一般方法)

扫描二维码关注公众号,回复: 12879154 查看本文章

        speak() {     //    说话的方法  ---- speak() 方法---> 放在了原型链上(类的原型上)

        }

      } 

2:  创建一个student 类

  class  Student {

   }

3: 创建一个Person 的实例对象

  const p1 =  new Person( “tom”, 18 );  

  const  s1 = new Student( "tony", 19);

call 方法和 apply () 和 bind() 方法 都可以改变this 的指向问题。

类的继承: 创建一个Person 类

 class Person {

     constructor( name, age ) {

           this.name = name;

           this.age = age;

         }

 }

创建一个Student 类, 继承于Person 类

class Student extends Person {

 }

const  s1 = new Student ('小李', 15)

console.log(s1)    student  已经继承了 Student 类

super: 方法帮你调父类构造器。 如果不使用父类方法, 就不要使用super 方法。

super()  必须在最开始调用, 如果放在其他的后边就会报错。

//  总结: 1:  类中的构造器不是必须要写的, 要对实例进行初始化操作的, 如添加指定属性时才写。

  2: 如果A 类继承了B类, 且A类中写了构造器, 那么A类构造器中的super 是必须要调用的。

  3: 类中所定义的方法, 都是放在了类的原型对象 上, 供实例去使用。

猜你喜欢

转载自blog.csdn.net/weixin_45677987/article/details/115068012