Structs & Methods

Duration: 15 min•Difficulty: Hard•

Struct adalah cara Go membuat tipe data kustom yang berisi kumpulan field. Ini mirip dengan Class di bahasa OOP (Java/PHP), tapi lebih sederhana tanpa inheritance.

Methods

Kita bisa menempelkan fungsi ke Struct, yang disebut Method. Ini memungkinkan Struct memiliki perilaku (behavior).

When to use?

Gunakan Struct untuk merepresentasikan objek nyata. Contoh:

  • User (Name, Email, Password)
  • Product (Name, Price, SKU)
  • Car (Brand, Color, Year)
MAIN.GO
package main
import "fmt"
// Definisi Struct User
type User struct {
Name string
Email string
Age int
}
// Method: Fungsi khusus milik User
func (u User) SayHello() {
fmt.Println("Halo, nama saya", u.Name)
}
func main() {
// Membuat object user baru
user1 := User{
Name: "Raffi",
Email: "raffi@mail.com",
Age: 20,
}
fmt.Println("Data User:", user1)
// Memanggil method
user1.SayHello()
}