Menu
Coddy logo textTech

Das `error`-Interface

Teil des Abschnitts Grundlagen der GO-Journey von Coddy. Lektion 103 von 109.

In Go ist das error-Interface ein integrierter Typ, der Fehlerbedingungen darstellt. Jeder Typ, der die Methode Error() implementiert, erfüllt dieses Interface.

Hier ist die Definition der Fehlerschnittstelle:

type error interface {
    Error() string
}

Erstelle einen benutzerdefinierten Fehlertyp:

type MyError struct {
    Message string
}

func (e MyError) Error() string {
    return e.Message
}

func main() {
    err := MyError{Message: "something went wrong"}
    fmt.Println(err)
}

Die Ausgabe lautet:

something went wrong
challenge icon

Aufgabe

Einfach

In dieser Herausforderung arbeitest du mit Gos error-Schnittstelle. Du musst mithilfe der Funktion errors.New() einen benutzerdefinierten Fehler erstellen und anschließend prüfen, ob ein Fehler vorhanden ist.

Der Code enthält bereits eine Funktion, die einen Fehler zurückgibt. Deine Aufgabe besteht darin, zu prüfen, ob der Fehler nicht nil ist, und eine passende Nachricht auszugeben.

Probier es selbst

package main

import (
	"errors"
	"fmt"
)

func main() {
	// Diese Funktion gibt einen Fehler zurück
	err := generateError()
	
	// TODO: Prüfe, ob err nicht nil ist
	// Wenn err nicht nil ist, drucke: "Error occurred: " gefolgt von der Fehlermeldung
	// HINT: Verwende eine if-Anweisung, um zu prüfen, ob err != nil
	
	
	// Diese Zeile wird ausgeführt, unabhängig davon, ob ein Fehler aufgetreten ist
	fmt.Println("Program completed successfully")
}

// Diese Funktion erzeugt einen Fehler
func generateError() error {
	return errors.New("something went wrong")
}
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Grundlagen

Übe selbstständig: Online-Go-Compiler