ゴランにおける方法とは
6626 ワード
こんにちは、私はAbdulrahman私は喜んでこのブログを共有する、このブログでは、ゴーンでの方法について話します.
したがって、まずGoにはクラス指向のプログラミングをサポートしていないので、クラスがないことを知っていなければなりません.
オブジェクトは、プログラマがクラス定義内で関数を宣言できるようにする方法です.Goは私たちがそうするのを許しません、我々は特別な構文で構造体の上でメソッドを宣言しなければなりません
ゴランはオブジェクト指向プログラミングをサポートしていないが、Golangはメソッドを持っている.
メソッドは特別な機能です
構文
この受信機は、次の例に示すように、メソッド内でアクセスできます.
構文
概要 GOはオブジェクト指向をサポートしていないので、クラスを持っていません Golangはオブジェクト指向プログラミングをサポートしていない メソッドは特別な受信機を持つ関数です 受信機タイプ 受信機は、構造体または非型構造体 メソッドは、受信機のプロパティにアクセスできます 私は、あなたがゴランで新しいブログにこのキックオフを楽しむことを望みます.
あなたとこれらのブログを共有するのを楽しみにしています.
したがって、まずGoにはクラス指向のプログラミングをサポートしていないので、クラスがないことを知っていなければなりません.
オブジェクト指向とは
オブジェクトは、プログラマがクラス定義内で関数を宣言できるようにする方法です.Goは私たちがそうするのを許しません、我々は特別な構文で構造体の上でメソッドを宣言しなければなりません
ゴランはオブジェクト指向プログラミングをサポートしていないが、Golangはメソッドを持っている.
ゴランにおける方法とは
メソッドは特別な機能です
receiver
引数とこのメソッドは、受信機のプロパティにアクセスできます.Receiver here can be type struct or non type struct like(int-string-etc...)
例で構文を見ましょう
構文
func (r ReceiverType) funcName(parameters) (result){/*code*/}
上の例では、Hoメソッドを定義しますReceiver here is => YourStruct
タイプのメソッドを定義する方法とそのようなメソッドを呼び出す方法を理解する完全な例を見てみましょうpackage main
type User struct { //define a struct
FirstName string
LastName string
}
上の例では、structFirstName-LastName
そして、私たちがfullnameを得ることを望むならば、我々はこれのように彼らを得ることができます:package main
import "fmt"
type User struct {
FirstName string
LastName string
}
func main() {
user := User{
"Abdulrahman",
"Masoud",
}
fmt.Print(user.FirstName+" "+user.LastName)
// Result => Abdulrahman Masoud
}
しかし、Golangでは、私たちが前に述べたように、受信機があなたの構造体であるメソッドを定義することができます.この受信機は、次の例に示すように、メソッド内でアクセスできます.
package main
import "fmt"
type User struct { //define a struct
FirstName string
LastName string
}
// GetFullName method to get full name
func (u User) GetFullName() string {
return u.FirstName + " " + u.LastName
}
func main() {
user := User{
"Abdulrahman",
"Masoud",
}
fmt.Print(user.GetFullName())
// Result => Abdulrahman Masoud
}
上の例では、必要な入力を持つ構造体を定義し、2番目に定義したGetFullName
方法及びこの方法のための受信機を追加する(u User) => this is the receiver of method
非型構造体を定義しましょう
構文
package main
import "fmt"
type Age int
func (a Age) GetAgeAfterTenYears() int {
return int(a + 10)
}
func main() {
age := Age(22)
fmt.Print(age.GetAgeAfterTenYears())
// Result => 32
}
上の例では、私たちが前に言うように、それが非構造型struct型でない年齢型を定義しましたReceiver here can be type struct or non type struct
ブログ終了
概要
あなたとこれらのブログを共有するのを楽しみにしています.
Reference
この問題について(ゴランにおける方法とは), 我々は、より多くの情報をここで見つけました https://dev.to/theamasoud/what-are-methods-in-golang-4b5gテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol