Golangにおける同じ名前のメソッド

Golang では 、同じパッケージ内に同じ名前のメソッドを 2 つ以上作成できますが、これらのメソッドのレシーバーは異なる型である必要があります。この機能は Go 関数では利用できません。つまり、同じパッケージ内に同じ名前のメソッドを作成することはできません。これを行おうとすると、コンパイラによってエラーが発生します。

Golangにおける同じ名前のメソッド

構文:

func(reciver_name_1 Type) method_name(parameter_list)(return_type){

// Code

}


func(reciver_name_2 Type) method_name(parameter_list)(return_type){

// Code

}

Golang の同じ名前のメソッドをよりよく理解するために、次の例を見てみましょう。

例1:

// Chương trình Go minh họa cách
// tạo các phương thức cùng tên
package main 

import "fmt"

// Tạo các cấu trúc
type student struct { 
	name string 
	branch string 
} 

type teacher struct { 
	language string 
	marks int
} 

// Các phương thức cùng tên nhưng với
// kiểu receiver khác nhau
func (s student) show() { 

	fmt.Println("Name of the Student:", s.name) 
	fmt.Println("Branch: ", s.branch) 
} 

func (t teacher) show() { 

	fmt.Println("Language:", t.language) 
	fmt.Println("Student Marks: ", t.marks) 
} 

// Hàm chính
func main() { 

	// Khởi tạo các giá trị
	// of the structures 
	val1 := student{"Rohit", "EEE"} 

	val2 := teacher{"Java", 50} 

	// Gọi các phương thức
	val1.show() 
	val2.show() 
} 

結果:

Name of the Student: Rohit
Branch:  EEE
Language: Java
Student Marks:  50

説明: 上記の例では、同じ名前 ( show())を持ちますが、受信タイプが異なる 2 つのメソッドがあります。ここで、最初のshow()メソッドにはstudent型のsが含まれ、 2 番目のshow()メソッドにはteacher型のtが含まれます。そして、main()関数では、それぞれの構造体変数を使用して両方のメソッドを呼び出します。同じレシーバー タイプでこれらのshow()メソッドを作成しようとすると、コンパイラはエラーをスローします。

例2:

// Chương trình Go minh họa cách
// tạo các phương thức cùng tên
// với receiver không phải struct
package main 

import "fmt"

type value_1 string 
type value_2 int

// Tạo hàm cùng tên với
// các kiểu receiver không phải struct khác nhau
func (a value_1) display() value_1 { 

	return a + "forGeeks"
} 

func (p value_2) display() value_2 { 

	return p + 298 
} 

// Hàm chính
func main() { 

	// Khởi tạo giá trị này
	res1 := value_1("Geeks") 
	res2 := value_2(234) 

	// Hiện kết quả
	fmt.Println("Result 1: ", res1.display()) 
	fmt.Println("Result 2: ", res2.display()) 
} 

結果:

Result 1:  GeeksforGeeks
Result 2: 532
Sign up and earn $1000 a day ⋙

Leave a Comment

Golang の名前付き戻りパラメータ

Golang の名前付き戻りパラメータ

Golang では、名前付き戻りパラメータは、名前付きパラメータと呼ばれることがよくあります。 Golang では、関数のシグネチャまたは定義内で関数の戻りパラメータまたは結果に名前を付けることができます。

Goのキーワード

Goのキーワード

キーワード - キーワードは、何らかの内部プロセスに使用されるか、何らかの事前定義されたアクションを表す言語の単語です。 Golang のキーワードについて知っておくべきことを以下に示します。

Golangのデータ型

Golangのデータ型

データ型は、有効な Go 変数に格納できるデータの型を指定します。 Go 言語では、型は次の 4 つのカテゴリに分類されます。

Golangの関数の引数

Golangの関数の引数

Go は、引数を渡す方法として、値渡しと参照渡しという 2 つの主な方法をサポートしています。 Go では、デフォルトで値渡しが使用されます。

Golangで複数の値を返す関数

Golangで複数の値を返す関数

Go 言語では、return ステートメントを使用して関数から複数の値を返すことができます。つまり、関数では、 return ステートメントは複数の値を返すことができます。

GoのSwitch文

GoのSwitch文

Golang には他のほとんどのプログラミング言語と同様に switch ステートメントがあります。 Golang で switch ステートメントを使用する方法は次のとおりです。

Golangで選択文を使用する際に知っておくべきケース

Golangで選択文を使用する際に知っておくべきケース

この記事では、デッドロックを回避するために default case を使用する方法を学習します。しかし、まず、Golang の select コマンドを使用するときにデッドロックが発生するケースが何であるかを確認しましょう。

Golang の匿名構造体とフィールド

Golang の匿名構造体とフィールド

Golang の匿名構造体は、1 回限りの目的で使用される名前のない一時的な構造体ですが、匿名フィールドでは名前のないフィールドを埋め込むことができます。

GolangでRuneを使う方法

GolangでRuneを使う方法

Golang におけるルーン文字とは何ですか? Golang で Rune を使用するにはどうすればいいですか?この記事でその答えがわかります。

Golangで演算子を使う方法

Golangで演算子を使う方法

演算子を使用すると、オペランドに対してさまざまな種類の演算を実行できます。 Go 言語では、演算子はさまざまな機能に基づいて分類できます。

Golang の void 識別子

Golang の void 識別子

Golang では _(アンダースコア) は空白識別子と呼ばれます。識別子は、識別目的で使用されるプログラム コンポーネントのユーザー定義名です。

Golangで基本的なプログラムを作成する方法

Golangで基本的なプログラムを作成する方法

こんにちは世界!あらゆるプログラミング言語における最初の基本プログラムです。この最初のプログラムは、以下の手順に従って Golang で記述できます。

WindowsにGoをインストールする方法

WindowsにGoをインストールする方法

Golang は Windows に簡単にインストールできます。以下は、Windows に Golang をインストールするための詳細なステップバイステップ ガイドです。

Goにおける変数のスコープ

Goにおける変数のスコープ

Golang における変数のスコープは、その変数にアクセスできるプログラムの部分を決定します。 Go では、すべての識別子にはコンパイル時に決定される語彙スコープがあります。

Apple Vision Pro 2: より軽量で、より安価で、ビジネス向け

Apple Vision Pro 2: より軽量で、より安価で、ビジネス向け

次世代のApple Vision Proは、デザイン、パフォーマンス、多様な開発戦略において目覚ましい改善をもたらすと期待され、一連のリーク情報で注目を集めている。

就職市場で自分を効果的に売り込む方法

就職市場で自分を効果的に売り込む方法

就職市場の競争が激化するにつれ、個人ブランドの構築は以前よりもはるかに複雑になっています。では、履歴書を雇用主にとって魅力的なものにするにはどうすればよいでしょうか?

スーツケースの掃除方法

スーツケースの掃除方法

スーツケースの取っ手や内部を最後に洗ったのはいつだったか思い出せませんか?それは、スーツケースをしっかり掃除する時期が来たことを示す確かな兆候です。

Appleマップで測定単位を変更する方法

Appleマップで測定単位を変更する方法

Apple マップ アプリケーションでは、各人のニーズや使用習慣に応じて、測定単位を km、マイル、マイル間で変更できます。

無料の旅行計画に役立つChatGPTとAIアプリ7選

無料の旅行計画に役立つChatGPTとAIアプリ7選

これらの無料の旅行計画アプリは、ChatGPT などの AI および機械学習ツールを使用して、数秒で旅程を準備します。

Google ChromeのアドレスバーからGeminiを使用する方法

Google ChromeのアドレスバーからGeminiを使用する方法

Google は AI 機能を Google Chrome ブラウザに統合しており、最近では Google Chrome アドレスバーの Gemini を使用しています。

Windowsでユーザーアカウントの種類を変更する4つの方法

Windowsでユーザーアカウントの種類を変更する4つの方法

Windows 10 では、複数のユーザーを作成できるだけでなく、標準ユーザー アカウントと管理者アカウントという複数の種類のアカウントを提供することで、共有 PC で他のユーザーが実行できる操作を制限することもできます。

Microsoft Edge の生産性を高める 10 個の便利なショートカット

Microsoft Edge の生産性を高める 10 個の便利なショートカット

キーボード ショートカットは、特に入力を頻繁に行う仕事に携わる人にとって、生産性を高める優れたツールです。

深刻なバグにより、Googleはテキスト付き画像を作成するAI機能を一時停止せざるを得なくなった

深刻なバグにより、Googleはテキスト付き画像を作成するAI機能を一時停止せざるを得なくなった

Googleは、重大な歴史的エラーのため、Gemini AIモデルのテキストから人物の画像を生成する機能を停止すると発表した。

PowerPointでCopilotを使用する方法

PowerPointでCopilotを使用する方法

Copilot は、PowerPoint コンテンツ スライドにクリエイティブなアイデアを追加したり、プレゼンテーション スライド内の不適切なコンテンツを修正したりするのに役立ちます。

Google Geminiの会話を削除する方法

Google Geminiの会話を削除する方法

Google Gemini の履歴全体を削除する代わりに、必要な会話だけを削除することを選択できます。以下の記事では、Google Gemini チャットを削除する方法について説明します。

IOS 16ベータ1からiOS 15にダウングレードする方法

IOS 16ベータ1からiOS 15にダウングレードする方法

この記事では、WebTech360 が iOS 16 ベータ版から iOS 15 にダウングレードする方法を説明します。

#SPILL を修正する方法! Microsoft Excelで

#SPILL を修正する方法! Microsoft Excelで

エラー #SPILL! Excel では非常によくある問題であり、修正も非常に簡単です。 #SPILL を修正する方法は次のとおりです。エラー。 Excelで簡単。

携帯電話を使って子供を監視するのに最適なアプリ

携帯電話を使って子供を監視するのに最適なアプリ

利用可能なさまざまなオプションを比較するのに役立つ、最高のペアレンタル コントロール アプリのリストを以下に示します。

Chromebook シェルフにメディア コントロールをピン留めする方法

Chromebook シェルフにメディア コントロールをピン留めする方法

この機能を使用するには、Chromebook で Chrome OS 89 以降を実行している必要があります。