ホームページ > バックエンド開発 > Golang > Go のカスタム型で time.Time メソッドを呼び出すにはどうすればよいですか?

Go のカスタム型で time.Time メソッドを呼び出すにはどうすればよいですか?

Barbara Streisand
リリース: 2024-12-18 10:24:15
オリジナル
454 人が閲覧しました

How Can I Call time.Time Methods on a Custom Type in Go?

名前付き型のメソッドの呼び出し

時間のラッパーである名前付き型 StartTime を作成しました。JSON アンマーシャリングの時間。ただし、StartTime インスタンスで Date() などの time.Time のメソッドを呼び出すことはできません。

これは、type キーワードを使用することで、実際には新しい型を作成したことになるためです。既存の時間を延長します。時間タイプ。独自のメソッドを追加しながら元のメソッドを保持するには、型の埋め込みを使用する必要があります。

type StartTime struct {
    time.Time
}
ログイン後にコピー

埋め込みを使用すると、埋め込まれた型 (この場合は time.Time) のフィールドとメソッドが「昇格」され、次のことが可能になります。名前付きタイプ (StartTime) でアクセスできます。したがって、myStartTime.Date() を呼び出すことができます。

例を示します:

package main

import (
    "fmt"
    "time"
)

type StartTime struct {
    time.Time
}

func main() {
    s := StartTime{time.Now()}
    fmt.Println(s.Date())
}
ログイン後にコピー

出力:

2009 November 10
ログイン後にコピー

以上がGo のカスタム型で time.Time メソッドを呼び出すにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート