ES6 Class 类定义和使用
类的基本定义和使用
//constructor() 方法是类的构造方法(默认方法),用于传递参数,返回实例对象
//通过 new 命令生成对象实例时,自动调用该方法。如果没有定义,类内部会自动给我们创建一个
// 创建类
class Star {
constructor(uname) {
// this.uname 指向了new 实例
this.uname = uname
}
}
// 创建实例
var star = new Star('测试')
console.log(star.uname)
类中添加方法
class Star {
constructor(uname) {
this.uname = uname
}
// 定义在 类中的方法不需要写 function,多个方法之间不需要添加逗号分割
sing() {
console.log(this.uname + '类中的方法')
}
data(val) {
console.log(this.uname + val)
}
}
var star = new Star('测试')
console.log(star.sing())
console.log(star.data('不需要添加逗号分割'))
类的继承
// 父类 Father
class Father {
constructor() {
}
money() {
console.log(100)
}
}
// 子类 Son
class Son extends Father {
}
var son = new Son()
son.money();
super 关键字用于访问和调用对象父类上的函数,可以调用父类构造函数,也可以调用父类普通函数
// 父类 Father
class Father {
constructor(x, y) {
this.x = x;
this.y = y;
}
sum() {
console.log(this.x + this.y);
}
}
// 子类 Son
class Son extends Father {
constructor(x, y) {
// 指向的是自己
// this.x= x;
// this.y = y;
// 指向父类
super(x, y);
}
}
var son = new Son(1, 2);
son.sum();
还没有评论,来说两句吧...