Thuta Learning
ရှာဖွေရန်
IntermediateProgrammingbeginner

Methods

စိတ်လျှော့ပါ။ ဒီခန်းကို စာအုပ်လိုမဟုတ်ဘဲ စကားပြောသလိုပဲ၊ နားလည်လွယ်အောင် ရှင်းပါမယ်။

Method သည် type တစ်ခုနဲ့ချိတ်ထားတဲ့ function ပါ။ Struct ထဲ data သိမ်းပြီး method ထဲမှာ behavior ထည့်တာကြောင့် code ကိုပိုစုစည်းနိုင်ပါတယ်။

go
package main

import "fmt"

type Rectangle struct {
    Width  int
    Height int
}

func (r Rectangle) Area() int {
    return r.Width * r.Height
}

func main() {
    rect := Rectangle{Width: 10, Height: 5}
    fmt.Println("area:", rect.Area())
}

func (r Rectangle) Area() မှာ (r Rectangle) ကို receiver လို့ခေါ်ပါတယ်။ အဲဒါကြောင့် rect.Area() လို object-style ခေါ်နိုင်တာပါ။

You should see
area: 50

Info

Method က receiver ကို value copy အဖြစ်ယူနိုင်သလို pointer receiver အဖြစ်လည်းယူနိုင်ပါတယ်။ Data ကိုပြောင်းမယ်ဆို pointer receiver ကိုစဉ်းစားပါ။

ဒီနေရာမှာ လူအများမှားတတ်တယ်

  • Method name ကို lowercase နဲ့စရင် package အပြင်ကနေမခေါ်နိုင်ပါ။ Library/API design လုပ်တဲ့အခါ naming ကိုသေချာရွေးပါ။
Methods | Thuta Learning