参考 class

class

特殊类型对象的创建模板

类可以让使用对象编程变得更容易。例如,一个 Frog 类可以创建行为像青蛙一样的对象。通过类创建的每个对象都是该类的一个实例。同一个类的所有实例都是相同类型。以下是创建 Frog 类实例的示例:

let fifi = new Frog(50, 50, 20);

变量 fifi 代表 Frog 的一个实例。关键字 new 用于在语句 new Frog() 中调用 Frog。总之,一个新的 Frog 对象被创建并赋值给了变量 fifi。类是模板,因此我们可以用它创建多个实例:

// First Frog instance. let frog1 = new Frog(25, 50, 10); <p>// Second Frog instance. let frog2 = new Frog(75, 50, 10); </p>

一个简单的 Frog 类可以声明如下:

class Frog { constructor(x, y, size) { // This code runs once when an instance is created. this.x = x; this.y = y; this.size = size; } <p> show() { // This code runs once when myFrog.show() is called. textAlign(CENTER, CENTER); textSize(this.size); text('\U0001F438', this.x, this.y); }</p> <p> hop() { // This code runs once when myFrog.hop() is called. this.x += random(-10, 10); this.y += random(-10, 10); } } </p>

类的声明以关键字 class 开头,后跟类名。例如 Frog,加上 {}。类名应该使用 PascalCase,并且不能包含空格。例如:命名为含有空格的 Kermit The Frog,就会引发 SyntaxError 错误。花括号 {} 之间的代码定义类。

属于类的函数被称为方法。在 Frog 类中,constructor()show(),和 hop() 都是方法。方法定义对象的行为。方法可以接受参数并返回值,就像函数一样。注意:方法不使用 function 关键字。

constructor() 是一个特殊的方法,在创建类的实例时调用一次。语句 new Frog() 调用 Frog 类的 constructor() 方法。

类定义是实例的模板。关键字 this 指代实例的数据和方法。例如,每个 Frog 实例都有独特的坐标存储在 this.xthis.y 中。show() 方法使用这些坐标来绘制青蛙。当调用 hop() 方法时,坐标会更新。一旦创建了一个 Frog 实例,可以使用点运算符 . 来访问它的数据和方法,如下所示:

// Draw a lily pad. fill('green'); stroke('green'); circle(fifi.x, fifi.y, 2 \* fifi.size); <p>// Show the Frog. fifi.show();</p> <p>// Hop. fifi.hop(); </p>

示例

Notice any errors or typos? Please let us know. Please feel free to edit src/core/reference.js and open a pull request!

相关参考