1.类的用法
JavaScript 语言中,生成实例对象的传统方法是通过构造函数,看下面的栗子
// 构造函数的方法
function Person(name,age){
this.name=name;
this.age=age;
}
Person.prototype.run = function(){
console.log(`可爱的${this.name},${this.age},在狂奔`)
}
let p = new Person('乔巴',2)
类的写法:
在ES6中,提出了类(class),可以更方便清晰地让我们创建实例
class Student{
// 构造方法
constructor(name,age){
this.name=name;
this.age=age;
}
// 实例方法
run(){
console.log(`一个${this.age}的小伙子在跑步`)
}
}
let s = new Student('路飞',18)
2.类的静态成员(静态属性和静态方法)
class Student{
// 构造方法
constructor(name,age){
this.name=name;
this.age=age;
}
run(){
// console.log(`一个${this.age}的小伙子在跑步`)
console.log('实例方法')
this.born() //this指向的是实例的对象
}
born (){
console.log('实例方法 出生')
}
//静态成员:静态属性,静态方法
// 静态属性:通过类本身访问,Student.maxAge
// 静态方法:通过类本身访问,Student.born()
static born(){
console.log('静态方法 出生')
}
static run(){
console.log('静态方法')
this.born() // this 执行类对象
}
// ss=1//报错
// 类对象的方法和实例的方法名字可以相同
}
Student.maxAge = 200 //静态属性
Student.born()
let s = new Student('路飞',18)
注意:
1.静态方法就在方法前面添加static.
2.静态方法的名字可以与实例方法的名字相同
3.静态方法的this,指向的是类对象,实例方法的thi指向实例对象
4.静态方法的调用,类.静态方法名,
5.静态方法和静态属性,实例不会继承。
6.静态属性写法只能写在外面,写在类的里面会报错
网友评论