golangオブジェクト指向プログラミングのアイデア

要約はじめに:

  実際には、一般的な物事のクラスの属性(フィールド)と振る舞い(メソッド)は物理モデル(テンプレート)を形成するために抽出され、構造体の定義では、このメソッドは抽象的研究の質問と呼ばれています。

パッケージ:

  フィールドのため、唯一、一緒にパッケージのフィールドとフィールドの動作の抽象保護されるべきデータ内で、他のプログラム・パッケージは、許可動作(方法)によって動作させることができます。

  最初の文字の小文字の1)構造、フィールド(属性)

  2)コンストラクタと同様工場モード機能、イニシャル、袋構造を提供すること

  3)特性および割り当てを決定するために、公共の他の言語と同様大文字セット()のための方法を提供すること

 model.go

パッケージモデル

インポート" FMT "

タイプのアカウントのstruct {
    ユーザ名の文字列
    パスワード文字列
    バランスのfloat64
}

FUNC NewAccount() * アカウント{
     リターンアカウント{}
}

// アカウントを設定
FUNC(ユーザーアカウント)SetUsername(ユーザ名の文字列){
     場合 lenを(ユーザ名)<6 && LEN(ユーザ名)> 10 {
        fmt.Println(アカウントの長さは6-10でなければならないのリターン
    }
    user.username = ユーザ名
}

FUNC(ユーザー * アカウント)GetUsername()文字列{
     戻りuser.username
}

// パスワードを設定
FUNC(ユーザー * アカウント)SetPasswordの(パスワード文字列){
     場合(パスワード)でlen!= 6 {
        fmt.Println(パスワードは6でなければならないのリターン
    }
    user.password = パスワード
}

FUNC(ユーザー * アカウント)GETPASSWORD()文字列{
     戻りuser.password
}

// バランスを設定
FUNC(ユーザーアカウント)SetBalance(バランスのfloat64){
     もしバランス<20 {
        fmt.Println(バランスがある20以上であるのリターン
    }
    user.balance = バランス
}

FUNC(ユーザー * アカウント)GetBalance()のfloat64 {
     戻りuser.balance
}

main.go

パッケージメイン

インポートFMT 
    モデル

FUNCのmain(){
    ユーザー: = model.NewAccount()
    user.SetUsername(" admin123 " 
    user.SetPassword(" 123456 " 
    user.SetBalance( 20 
    fmt.Println(user.GetUsername()、user.GetPassword()、user.GetBalance())
}

 

継承:

  

おすすめ

転載: www.cnblogs.com/xiangxiaolin/p/12094389.html