上一节我们学习了JS中的常用内置函数,本节我们将学习JS中的另外一大概念——类。
我们先看看类长什么样子:
/*类(class)的认识*/
class Student//通过class关键字创建一个学生类,类名首字母通常大写
{
constructor(name, age, gender)//构造函数,用于初始化类内成员变量
{
this.name = name
this.age = age
this.gender = gender
}
/* 学生的行为 */
study() {
console.log('我正在学习JS!');
}
play() {
console.log('打打算竟放松一下');
}
eat() {
console.log('我要吃水果蔬菜和肉蛋奶');
}
}
/* 通过类这个模板进行批量创建 */
const s1 = new Student('a', 18, 'male')
const s2 = new Student('b', 18, 'male')
const s3 = new Student('c', 18, 'male')
/* 检测类的行为 */
s1.study();//我正在学习JS!
s2.play();//打打算竟放松一下
s3.eat();//我要吃水果蔬菜和肉蛋奶每个类中包含了一个特殊的方法 constructor(),它是类的构造函数,这种方法用于创建和初始化一个由 class 创建的对象。
在这个例子里,我们创建 了一个学生类,通过学生类模板进行学生对象的批量复制,并让3个不同的学生分别做了study()、play()和eat()的行为。
创建一个类一般会有以下这3个步骤:
1. class声明类(首字母大写)。
2. 创建类内变量,可以通过类的构造函数constructor()也可以直接定义变量(类内定义变量无需let、var、const关键字,直接定义)。
3. 通过new关键字创建类的实体。
学习到这里,看到“批量创建对象”这句话,读者应该能够联想到构造函数!构造函数也能通过new关键字批量创建类,那么它们之间有什么区别吗?简单说来,它们本质上都属于同一个机制,ES6前使用构造函数,ES6后引入类,但是类在创建私有数据、继承等方面更有优势。
总结:本节我们学习了什么是类,以及通过类的构造函数constructor()来设计类内变量,通过点‘.’的方式调用类内方法。
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程