Detaillierte Einführung in die in Golang festgelegte Methode

PHPz
Freigeben: 2023-04-03 13:52:15
Original
955 Leute haben es durchsucht

Go-Sprache ist eine aufstrebende Programmiersprache. Ihre Eleganz, Effizienz und Einfachheit haben die Aufmerksamkeit vieler Programmierer auf sich gezogen. Die Go-Sprache ist in vielen Aspekten wie Syntax, Plattformunterstützung und Leistung hervorragend. Sie wird häufig in der Datenverarbeitung, der Programmierung mit hoher Parallelität, der Webprogrammierung und anderen Bereichen verwendet und weist eine extrem hohe Skalierbarkeit auf.

Die in Golang festgelegten Methoden sind ein Teil, mit dem viele Entwickler nicht vertraut sind. In diesem Artikel werden die in Golang festgelegten Methoden und deren Verwendung vorgestellt.

Ein Methodensatz ist eine Sammlung von Methoden, die zu einer bestimmten Schnittstelle oder Struktur gehören. In der Go-Sprache ist der Methodensatz in einen Wertmethodensatz und einen Zeigermethodensatz unterteilt. Der größte Unterschied besteht darin, ob der Aufrufer geändert werden kann.

Methoden in einem Wertmethodensatz ändern den Wert, für den sie aufgerufen werden, nicht. Das heißt, in einem Wertmethodensatz können Methoden den Status des Werts, für den sie aufgerufen werden, nicht ändern. Wir können einen Methodensatz verwenden, der einen Strukturtyp als Empfänger enthält, und dann kann der Werttyp Methoden im Wertmethodensatz aufrufen.

Nehmen Sie als Beispiel eine Zeichenfolge. In der Go-Sprache ist eine Zeichenfolge ein schreibgeschütztes Byte-Slice, und sein Wert kann nicht geändert werden. Wenn wir die Zeichenfolge ändern möchten, müssen wir den Zeigermethodensatz verwenden. Die Set-Methode der Zeigermethode manipuliert den Wert einer Variablen über einen Zeiger und kann ihren Zustand ändern. Wir können einen Methodensatz verwenden, der einen Strukturzeigertyp als Empfänger enthält, und dann kann der Zeigertyp Methoden im Zeigermethodensatz aufrufen.

Wenn wir in der Go-Sprache einen Methodensatz definieren, kann dieser Methodensatz auf alle Schnittstellen und Strukturen mit denselben Methoden und Implementierungen angewendet werden. Dies bietet uns eine einfache Möglichkeit, auf gemeinsame Funktionen zuzugreifen.

Das Folgende ist ein Beispiel für die Verwendung des Wertmethodensatzes und des Zeigermethodensatzes:

package main

import (
    "fmt"
)

type User struct {
    Name string
    Age  int
}

func (u User) GetName() string {
    return u.Name
}

func (u *User) SetName(name string) {
    u.Name = name
}

func main() {
    user := User{
        Name: "Tom",
        Age:  18,
    }
    fmt.Println(user.GetName())
    user.SetName("Jerry")
    fmt.Println(user.GetName())
}
Nach dem Login kopieren

In diesem Beispiel definieren wir eine Benutzerstruktur und definieren die GetName-Methode im Wertmethodensatz, die den Namen des Benutzers zurückgibt.

Im Zeigermethodensatz definieren wir die SetName-Methode, die den Namen des Benutzers ändern kann.

Die Funktion main() erstellt zunächst eine Benutzerinstanz mit dem Namen „Tom“ und gibt ihren Namen aus. Anschließend rufen wir die SetName-Methode mithilfe des Zeigers auf, um ihren Namen in „Jerry“ zu ändern. Wenn die GetName-Methode aufgerufen wird, gibt sie den neuen Namen „Jerry“ zurück.

Zusätzlich zum Wertmethodensatz und Zeigermethodensatz können wir auch die leere Schnittstelle als Empfänger der Methode verwenden. Mithilfe der leeren Schnittstelle implementierte Methoden können für jede Art von Wert aufgerufen werden.

Zum Beispiel können wir eine Methode definieren, die eine leere Schnittstelle als Parameter akzeptiert und verschiedene Arten von Werten ausgibt:

package main

import (
    "fmt"
)

func PrintValue(v interface{}) {
    fmt.Println(v)
}

func main() {
    PrintValue("Hello, World")
    PrintValue(123)
    PrintValue(3.142)
}
Nach dem Login kopieren

Die PrintValue-Methode akzeptiert eine leere Schnittstelle als Parameter und gibt ihren Wert aus.

In der Funktion main() rufen wir die Methode PrintValue dreimal auf und übergeben jeweils verschiedene Arten von Werten. Unabhängig davon, ob Strings, Ganzzahlen oder Gleitkommazahlen übergeben werden, kann PrintValue deren Werte ausdrucken.

Zusammenfassung:

  • Ein Methodensatz ist eine Sammlung von Methoden, die zu einer bestimmten Schnittstelle oder Struktur gehören.
  • Der Methodensatz ist in einen Wertmethodensatz und einen Zeigermethodensatz unterteilt. Der größte Unterschied besteht darin, ob der Aufrufer geändert werden kann.
  • Wenn wir in der Go-Sprache einen Methodensatz definieren, kann dieser Methodensatz auf alle Schnittstellen und Strukturen mit denselben Methoden und Implementierungen angewendet werden.
  • Methoden, die über die leere Schnittstelle implementiert werden, können von jedem Werttyp aufgerufen werden.

Obwohl Golang eine aufstrebende Programmiersprache ist, verfügt sie bereits über viele hervorragende Funktionen, und der Methodensatz ist einer davon. Die Beherrschung der Verwendung von Methodensätzen kann uns während des Entwicklungsprozesses bequeme und effiziente Dienste bieten.

Das obige ist der detaillierte Inhalt vonDetaillierte Einführung in die in Golang festgelegte Methode. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!