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()
    }