Skip to content

Commit ef995a5

Browse files
fResultsila-strike
authored andcommitted
revise title name of Subtyping
1 parent 7e98412 commit ef995a5

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

_th/tour/traits.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ Trait ใช้เพื่อแชร์ interface และ field ระห
1515
คลาส และ object สามารถ extend trait ได้ แต่เราไม่สามารถสร้าง object จาก trait ได้\
1616
ดังนั้น trait จึงไม่สามารถมี parameter เช่นเดียวกับที่คลาสมี
1717

18-
## การกำหนด trait
18+
## การกำหนด Trait
1919

2020
วิธีที่ง่ายที่สุดในการกำหนด trait คือการประกาศด้วย keyword `trait` และ indentifier:
2121

@@ -56,7 +56,7 @@ trait Iterator[A]:
5656

5757
การขยาย (extend) `trait Iterator[A]` ต้องการ type `A` และ implementation ของ method `hasNext` และ `next`
5858

59-
## การใช้ traits
59+
## การใช้ Trait
6060

6161
ใช้ keyword `extends` เพื่อขยาย trait จากนั้นให้ implement abstract member ใดๆ ของ trait โดยใช้ keyword `override`:
6262

@@ -121,15 +121,15 @@ iterator.next() // returns 1
121121
คลาส `IntIterator` นี้รับค่า parameter `to` เพื่อกำหนดค่าสูงสุด (upper bound) โดยที่คลาส `IntIterator` ได้ extend จาก `Iterator[Int]`\
122122
ดังนั้น method `next` จะต้อง return ค่าเป็น Int
123123

124-
## Subtyping
124+
## การใช้ Subtype
125125

126126
เมื่อจำเป็นต้องใช้ trait ใดๆ เราสามารถใช้ subtype (คลาสใดก็ตาม ที่ extend มาจาก trait นั้นๆ) แทนได้
127127

128-
> **Note by Thai translator:**\
128+
> ***Note by Thai translator:***\
129129
> "เมื่อจำเป็นต้องใช้ trait ใดๆ" ในที่นี้ น่าจะหมายถึงเรามีการระบุไว้ว่า parameter ที่ได้ระบุ type เป็น trait\
130130
> ดังนั้นเราสามารถใช้ *subtype ใดๆ ที่ implement จาก trait นั้นๆ ได้*
131131
>
132-
> ลองพิจารณา code นี้
132+
> **ลองพิจารณา code นี้:**
133133
>
134134
> ```scala
135135
> val dog = new Dog("Harry") // คลาส `Dog` เป็น subtype ของ trait `Pet`

0 commit comments

Comments
 (0)