Kaedah init dalam bahasa Go ialah fungsi khas yang digunakan untuk melaksanakan operasi pemulaan apabila program sedang berjalan. Artikel ini akan memperkenalkan pengetahuan berkaitan kaedah init, termasuk ciri-cirinya, penggunaannya, dsb.
1. Ciri-ciri kaedah init
- Kaedah init ialah kaedah khas dalam bahasa Go, dan nama fungsinya mestilah init; kaedah tidak boleh digunakan oleh fungsi lain Dipanggil, ia dipanggil secara automatik oleh masa jalan bahasa Go; 🎜>
dalam pakej , hanya satu kaedah init akan dilaksanakan, dan ia dipanggil apabila pakej dirujuk, bukan apabila pakej disusun; - Jika fail sumber mengandungi kaedah init, maka pengkompil menjana fail boleh laku Mereka akan disusun ke dalam fail dan dilaksanakan mengikut susunan yang ditentukan.
-
- 2. Penggunaan kaedah init
- Memulakan pembolehubah global
Pembolehubah global boleh dimulakan dalam kaedah init, contohnya:
var (
a int
b bool
)
func init() {
a = 10
b = true
}
Salin selepas log masuk
Daftar pemandu
Dalam bahasa Go, selalunya perlu untuk mendaftarkan pemandu, contohnya:
import (
"database/sql"
"github.com/go-sql-driver/mysql"
)
func init() {
sql.Register("mysql", &mysql.MySQLDriver{})
}
Salin selepas log masuk
- Dalam kod di atas, gunakan kaedah sql.Register untuk mendaftar Pemacu mysql dipasang, supaya pangkalan data mysql boleh digunakan dalam atur cara.
Muatkan fail konfigurasi
Sebelum menjalankan program, anda perlu membaca beberapa parameter daripada fail konfigurasi, yang boleh dilakukan dalam kaedah init, contohnya:
var config *Config
type Config struct {
Address string
Port int
}
func init() {
file, err := os.Open("config.json")
if err != nil {
panic(err)
}
decoder := json.NewDecoder(file)
err = decoder.Decode(&config)
if err != nil {
panic(err)
}
}
Salin selepas log masuk
- Dalam kod di atas, kaedah init memuatkan fail config.json dan menghuraikan parameter di dalamnya ke dalam pembolehubah konfigurasi.
Daftar laluan HTTP
Apabila menulis aplikasi web dalam bahasa Go, selalunya perlu mendaftar laluan HTTP, contohnya:
func init() {
http.HandleFunc("/index", handleIndex)
}
func handleIndex(w http.ResponseWriter, r *http.Request) {
w.Write([]byte("Hello, world!"))
}
Salin selepas log masuk
- Dalam kod di atas, init Kaedah mendaftarkan fungsi pemprosesan handleIndex dengan laluan /index.
Memulakan logger
Melog masuk program ialah keperluan biasa Anda boleh memulakan logger dalam kaedah init, contohnya:
rreee- . Dalam kod di atas, kaedah init mencipta logger, mengeluarkan log ke fail app.log dan menambah cap masa sebelum log.
3. Ringkasan
Artikel ini memperkenalkan kaedah init dalam bahasa Go, termasuk ciri, penggunaannya, dsb. Kewujudan kaedah init menjadikan operasi pemulaan apabila program berjalan lebih mudah dan lebih fleksibel, menjadikan program lebih mudah untuk ditulis dan diselenggara. Oleh itu, adalah sangat penting bagi pembangun program bahasa Go untuk menguasai penggunaan kaedah init.
Atas ialah kandungan terperinci kaedah golang init. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!