在 ES6 中引入了类(class)的概念,让 JavaScript 更加接近传统面向对象编程语言。类提供了一种用于创建对象的模板,其中包含了属性和方法的定义。
1.定义类
使用 class
关键字可以定义一个类,类名通常以大写字母开头。
1 class Person { 2 3 4 constructor(name,age,work){ 5 this.name = name; 6 this.age = age; 7 this.work = work; 8 } 9 10 info(){ 11 console.log(`我叫${this.name},我今年${this.age}岁,我的工作是${this.work}`) 12 } 13 }
在上面的例子中,我们定义了一个 Person
类,包含了构造函数 constructor
和一个 info 方法。构造函数用于初始化对象的属性,而方法则用于定义对象的行为。
2.创建对象实例
通过 new
关键字可以实例化一个类,创建对象实例
let red = new Person('小红','18','teacher') red.info() //我叫小红,我今年18岁,我的工作是teacher
在这个例子中,我们使用 Person
类创建了一个名为 red 的对象实例,并调用了 info
方法。
3.继承
ES6 的类支持继承,可以通过 extends
关键字实现类之间的继承关系。
class Lawyer extends Person { constructor(name,age,work,wage){ super(name,age,work) this.wage = wage } info(){ console.log(`我叫${this.name},我今年${this.age}岁,我的工作是${this.work},我的年薪是${this.wage}`) } } let blue = new Lawyer('小蓝','33','lawyer','20w') blue.info() //我叫小蓝,我今年33岁,我的工作是lawyer,我的年薪是20w
在这个例子中,Lawyer 类继承自 Person
类,使用 super
关键字调用父类的构造函数,并添加了一个新的 info
方法。
4.静态方法
ES6 的类还支持静态方法,可以通过 static
关键字定义一个静态方法,静态方法属于类本身而不是实例。
class Test { static testStatic(a,b){ a=a+b; b= a-b; console.log(a,b) return a*b } } const number = Test.testStatic(5,2) console.log(`number:${number}`)
在这个例子中,Test类包含了一个静态方法 testStatic,可以直接通过类名调用。
总的来说,ES6 的类提供了一种更加清晰和易用的面向对象编程方式,使得 JavaScript 更加灵活和可维护。通过类的定义、继承和静态方法,我们可以更好地组织和管理代码,提高代码的复用性和可读性。
标签:info,ES6,静态方法,浅谈,age,work,class,name From: https://www.cnblogs.com/qinlinkun/p/18025289