目录
一、ES6的面向对象的语法
1.面向对象的三大特征
(1)封装性:对象是属性和行为的封装体
(2)多态性:同一消息被不同对象接收后,表现的结果不同
(3)继承性:子类可以继承父类的属性和方法
2.ES6中定义类
class 类名{
构造方法(){
}
成员方法;
}
‘类名’:首字母大写
构造方法:对类的对象进行初始化的,不会显示调用
成员方法:表示某种行为
类:是具有相同属性和行为的对象的集合(类是对象的抽象)
对象:是类的实例化
3.ES6中创建对象
class Student{
}
var s1 = new Student();//在内存中开辟了一个存储空间
class Student {
constructor(id, name, sex) { //构造方法
this.id = id;
this.name = name;
this.sex = sex;
this.age = 18;
this.address = null;
}
show(){ //成员方法(成员函数)
console.log('学号:',this.id)
console.log('姓名:',this.name)
console.log('性别:',this.sex)
console.log('年龄:',this.age)
console.log('地址:',this.address)
}
}
var s1 = new Student(1001,'郭靖','男')
s1.show()
s1.age = 22
s1.address = '蒙古'
s1.show()
(1)构造方法
作用:是初始化对象
调用:不能显示调用,而是通过类名调用
(2)this指针:指当前的对象
(3)属性和方法的使用
属性:对象名.属性
方法:对象名.方法名([参数])
二、ES6中类的继承
子类可以继承父类的部分属性和方法,在继承后,子类还可以定义自己独有的属性和方法
(1)子类(派生类):继承的类
(2)父类(超类、基类):被继承的类
(3)语法格式:
class 子类名 extends 父类名{
构造方法(){}
成员方法
}
(4)子类访问父类的构造方法