Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 3ea1737

Browse files
committed
补充类与接口章节
1 parent 6848aa3 commit 3ea1737

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

advanced/class-and-interfaces.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ let point3d: Point3d = {x: 1, y: 2, z: 3};
100100

101101
实际上,当我们在声明 `class Point` 时,除了会创建一个名为 `Point` 的类之外,同时也创建了一个名为 `Point` 的类型(实例的类型)。
102102

103-
所以我们既可以将 `Point` 当做一个类来用(使用 `new` 创建它的实例):
103+
所以我们既可以将 `Point` 当做一个类来用(使用 `new Point` 创建它的实例):
104104

105105
```ts
106106
class Point {
@@ -195,7 +195,9 @@ let point3d: Point3d = {x: 1, y: 2, z: 3};
195195

196196
所以这种用法和接口继承接口没有什么本质的区别。
197197

198-
值得注意的是,`PointInstanceType` 相比于 `Point`,缺少了 `constructor` 方法,这是因为声明 `Point` 类时创建的 `Point` 类型是不包含构造函数的。另外,除了构造函数是不包含的,静态属性/方法也是不包含的(实例的类型当然不应该包括构造函数和静态属性/方法):
198+
值得注意的是,`PointInstanceType` 相比于 `Point`,缺少了 `constructor` 方法,这是因为声明 `Point` 类时创建的 `Point` 类型是不包含构造函数的。另外,除了构造函数是不包含的,静态属性或静态方法也是不包含的(实例的类型当然不应该包括构造函数、静态属性或静态方法)。
199+
200+
换句话说,声明 `Point` 类时创建的 `Point` 类型只包含实例属性和实例方法:
199201

200202
```ts
201203
class Point {
@@ -232,7 +234,7 @@ let p2: PointInstanceType;
232234

233235
上例中最后的类型 `Point` 和类型 `PointInstanceType` 是等价的。
234236

235-
所以在接口继承类的时候,也只会继承它的实例属性/方法
237+
也就是说,在接口继承类的时候,也只会继承它的实例属性和实例方法
236238

237239
## 参考
238240

0 commit comments

Comments
 (0)