วิธีการในโกลัง

วิธีการในGolang  นั้นเหมือนกับฟังก์ชัน แต่มีความแตกต่างที่สำคัญอย่างหนึ่งคือ มี อาร์กิวเมนต์ ตัวรับซึ่งทำให้เข้าถึงคุณสมบัติของตัวรับได้ ตัวรับสามารถเป็นชนิด struct หรือ non-struct ได้ แต่ทั้งสองจะต้องอยู่ในแพ็คเกจเดียวกัน ไม่สามารถสร้างวิธีการสำหรับประเภทที่กำหนดไว้ในแพ็คเกจอื่นได้ รวมถึงประเภทในตัวเช่นintหรือstringหากเป็นเช่นนั้น คอมไพเลอร์จะรายงานข้อผิดพลาด

วิธีการในโกลัง

ตัวอย่างเช่น:

package main

import "fmt"

// Định nghĩa một struct
type person struct {
    name string
    age  int
}

// Định nghĩa một phương thức với struct receiver
func (p person) display() {
    fmt.Println("Name:", p.name)
    fmt.Println("Age:", p.age)
}

func main() {
    // Tạo một phiên bản của struct
    a := person{name: "a", age: 25}
    
    // Gọi phương thức
    a.display()
}

ผลลัพธ์:

Name: a
Age: 25

ไวยากรณ์

func(receiver_name Type)  method_name(parameter_list) (return_type) { 
// Code
}

ผู้รับ :สามารถเข้าถึงได้ด้วยวิธีนี้

วิธีการที่มีตัวรับประเภทโครงสร้าง

ใน Go คุณสามารถกำหนดวิธีการที่ตัวรับเป็นประเภท struct ได้ ผู้รับสามารถเข้าถึงได้ภายในวิธีการ ตัวอย่างก่อนหน้านี้แสดงให้เห็นแนวทางนี้โดยใช้ตัวรับประเภท struct

วิธีการที่มีตัวรับไม่ใช่ประเภทโครงสร้าง

Go ยังอนุญาตให้มีวิธีการที่มีตัวรับที่ไม่ใช่โครงสร้างได้ ตราบใดที่ประเภทตัวรับและคำจำกัดความของวิธีการอยู่ในแพ็คเกจเดียวกัน คุณไม่สามารถกำหนดวิธีการที่มีประเภทตัวรับจากแพ็คเกจอื่นได้ (เช่น int, สตริง)

ตัวอย่างเช่น:

package main

import "fmt"

// Tạo một kiểu tùy biến dựa trên int
type number int

// Định nghĩa một phương thức với receiver không phải struct
func (n number) square() number {
    return n * n
}

func main() {
    a := number(4)
    b := a.square()

    fmt.Println("Square of", a, "is", b)
}

ผลลัพธ์:

Square of 4 is 16

วิธีการที่มีตัวชี้ตัวรับ

ใน Go วิธีการสามารถมีตัวรับตัวชี้ได้ วิธีนี้จะช่วยให้การเปลี่ยนแปลงที่ทำในวิธีการสะท้อนไปยังตัวเรียก ซึ่งไม่สามารถทำได้กับตัวรับค่า

รูปแบบประโยค :

func (p *Type) method_name(...Type) Type {    // Code}

ตัวอย่างเช่น:

package main

import "fmt"

// Defining a struct
type person struct {
    name string
}

// Phương thức với receiver pointer để chỉnh sửa dữ liệu
func (p *person) changeName(newName string) {
    p.name = newName
}

func main() {
    a := person{name: "a"}
    
    fmt.Println("Before:", a.name)
    
    // Gọi phương thức này để thay đổi tên
    a.changeName("b")
    
    fmt.Println("After:", a.name)
}

ผลลัพธ์:

Before: a
After: b

วิธีการนี้ยอมรับทั้งตัวชี้และค่า

ต่างจากฟังก์ชัน วิธีการของ Go สามารถรับทั้งตัวรับค่าและตัวชี้ได้ คุณสามารถส่งตัวชี้หรือค่าได้ และวิธีการจะจัดการตามนั้น

ตัวอย่างเช่น:

package main
import "fmt"

type person struct {
    name string
}
// Phương thức với receiver pointer
func (p *person) updateName(newName string) {
    p.name = newName
}

// Phương thức với receiver value 
func (p person) showName() {
    fmt.Println("Name:", p.name)
}

func main() {
    a := person{name: "a"}
    
    // Gọi phương thức con trỏ cùng giá trị
    a.updateName("b")
    fmt.Println("After pointer method:", a.name)
    
    // Gọi phương thức giá trị với con trỏ
    (&a).showName()
}

ผลลัพธ์:

After pointer method: b
Name: b

ความแตกต่างระหว่างวิธีการและฟังก์ชั่น

วิธี ขากรรไกร
มีตัวรับสัญญาณ ไม่มีตัวรับสัญญาณ
สามารถกำหนดวิธีการที่มีชื่อเดียวกัน แต่มีประเภทที่แตกต่างกันได้ ไม่อนุญาตให้ใช้ฟังก์ชั่นที่มีชื่อเดียวกันแต่มีประเภทต่างกัน
ไม่สามารถใช้เป็นคำคุณศัพท์ขั้นยอดได้ สามารถใช้เป็นวัตถุเหนือกว่าได้

ฝากความเห็น

ของตกแต่งฮาโลวีนน่ารักๆ ที่ไม่มีฉากโหดหรือน่ากลัว

ของตกแต่งฮาโลวีนน่ารักๆ ที่ไม่มีฉากโหดหรือน่ากลัว

สร้างบรรยากาศฮาโลวีนที่อ่อนโยนด้วยสีพาสเทล ผีที่เป็นมิตร ของตกแต่งที่ไม่ต้องแกะสลักง่ายๆ และเคล็ดลับความปลอดภัยที่ใช้ได้จริงสำหรับบ้านของคุณ

10 ไอเดียตกแต่งฮาโลวีนแบบ DIY จากกล่องกระดาษแข็งรีไซเคิล (ง่ายไปจนถึงขั้นสูง)

10 ไอเดียตกแต่งฮาโลวีนแบบ DIY จากกล่องกระดาษแข็งรีไซเคิล (ง่ายไปจนถึงขั้นสูง)

ประดิษฐ์ของตกแต่งฮาโลวีน 10 แบบจากกล่องกระดาษแข็งรีไซเคิล ตั้งแต่พวงมาลัยค้างคาวและฟักทอง ไปจนถึงบ้านผีสิง พร้อมขั้นตอนการทำและเคล็ดลับด้านความปลอดภัย

ชุดฮาโลวีนครูที่เด็กๆ จะจำได้ในปี 2026

ชุดฮาโลวีนครูที่เด็กๆ จะจำได้ในปี 2026

ค้นหาชุดฮาโลวีนสุดคุ้นเคยสำหรับคุณครูในปี 2026 ตั้งแต่ Bluey และ Dog Man ไปจนถึง Mario และ HUNTR/X พร้อมตัวเลือกตามช่วงอายุและเคล็ดลับความปลอดภัยในห้องเรียน

20 ชุดฮาโลวีนง่ายๆ สำหรับนักศึกษาที่คุณสามารถดัดแปลงจากของในตู้ได้

20 ชุดฮาโลวีนง่ายๆ สำหรับนักศึกษาที่คุณสามารถดัดแปลงจากของในตู้ได้

กำลังมองหาชุดฮาโลวีนสำหรับนักศึกษาแบบเร่งด่วนอยู่หรือเปล่า? ลองดู 20 ลุคที่ง่ายและประหยัดงบประมาณ ซึ่งสร้างจากเสื้อผ้าพื้นฐานในตู้ พร้อมเคล็ดลับการแต่งตัวและความปลอดภัยอย่างรวดเร็ว

สไตล์สยองขวัญจาก BookTok: หนังสือและของตกแต่งสำหรับวันฮาโลวีนที่ตอบโจทย์ความน่ากลัวทุกระดับ

สไตล์สยองขวัญจาก BookTok: หนังสือและของตกแต่งสำหรับวันฮาโลวีนที่ตอบโจทย์ความน่ากลัวทุกระดับ

สำรวจหนังสือสยองขวัญและของตกแต่งฮาโลวีนที่ได้รับแรงบันดาลใจจาก BookTok เปรียบเทียบสไตล์โกธิค อบอุ่น และสยองขวัญ พร้อมเคล็ดลับที่เป็นประโยชน์สำหรับการจัดมุมอ่านหนังสือที่ปลอดภัย

วิธีจัดงานปาร์ตี้ฮาโลวีนเสมือนจริงสำหรับทีมที่ทำงานทางไกล

วิธีจัดงานปาร์ตี้ฮาโลวีนเสมือนจริงสำหรับทีมที่ทำงานทางไกล

วางแผนจัดงานปาร์ตี้ฮาโลวีนเสมือนจริงที่ทุกคนสามารถเข้าร่วมได้ ไม่ว่าจะเป็นทีมที่ทำงานจากระยะไกล ด้วยตารางเวลาที่เหมาะสมกับเขตเวลา เกมง่ายๆ ตัวเลือกที่เข้าถึงได้ง่าย และรายการตรวจสอบสำหรับการจัดงานที่ใช้งานได้จริง

น่ากลัวแต่ก็แสนน่ารัก: ไอเดียจัดงานปาร์ตี้ฮาโลวีนสำหรับโรงเรียนประถม

น่ากลัวแต่ก็แสนน่ารัก: ไอเดียจัดงานปาร์ตี้ฮาโลวีนสำหรับโรงเรียนประถม

วางแผนจัดงานปาร์ตี้ฮาโลวีนสนุกๆ สำหรับเด็กประถม ด้วยงานประดิษฐ์ง่ายๆ เกม ขนมสำหรับทุกคน เคล็ดลับการแต่งกาย และตัวอย่างตารางเรียนในห้องเรียน 75 นาที

ไอเดียตกแต่งโต๊ะทำงานสำหรับห้องทำงานสไตล์หลอนๆ

ไอเดียตกแต่งโต๊ะทำงานสำหรับห้องทำงานสไตล์หลอนๆ

สร้างบรรยากาศสุดหลอนในห้องทำงานด้วยไอเดียตกแต่งโต๊ะทำงานธีมฮาโลวีน ที่จะช่วยให้พื้นที่ทำงานของคุณยังคงใช้งานได้จริง เป็นระเบียบเรียบร้อย และคำนึงถึงความปลอดภัยในที่ทำงาน

ไอเดียชุดแฟนซีจากวัฒนธรรมป๊อปที่จะมาแรงในวันฮาโลวีนปี 2026

ไอเดียชุดแฟนซีจากวัฒนธรรมป๊อปที่จะมาแรงในวันฮาโลวีนปี 2026

วางแผนลุคฮาโลวีนปี 2026 ที่น่าจดจำด้วยชุดคอสตูมจากวัฒนธรรมป๊อปที่ได้รับแรงบันดาลใจจากสไปเดอร์แมน ซูเปอร์เกิร์ล ทอยสตอรี่ 5 โมอาน่า มาริโอ และเวนส์เดย์

ลูกอมและฟักทองที่เหลือจากวันฮาโลวีน: ควรทำอะไรต่อดี

ลูกอมและฟักทองที่เหลือจากวันฮาโลวีน: ควรทำอะไรต่อดี

คัดแยกขนมฮาโลวีนที่เหลืออย่างปลอดภัย แบ่งปันหรือนำขนมที่บรรจุในภาชนะปิดสนิทไปใช้ใหม่ และเลือกนำฟักทองไปใช้ประกอบอาหารหรือทำปุ๋ยหมักตามสภาพของฟักทอง