Menu
Coddy logo textTech

L'interfaccia `error`

Fa parte della sezione Fondamenti del percorso GO di Coddy. Lezione 103 di 109.

In Go, l'interfaccia error è un tipo integrato che rappresenta le condizioni di errore. Qualsiasi tipo che implementa il metodo Error() soddisfa questa interfaccia.

Ecco la definizione dell'interfaccia error:

type error interface {
    Error() string
}

Crea un tipo di errore personalizzato:

type MyError struct {
    Message string
}

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

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

L'output sarà:

something went wrong
challenge icon

Sfida

Facile

In questa sfida, lavorerai con l’interfaccia error di Go. Devi creare un errore personalizzato usando la funzione errors.New() e poi verificare se esiste un errore.

Il codice contiene già una funzione che restituisce un errore. Il tuo compito è verificare che l’errore non sia nil e stampare un messaggio appropriato.

Provalo tu

package main

import (
	"errors"
	"fmt"
)

func main() {
	// Questa funzione restituisce un errore
	err := generateError()
	
	// TODO: Controlla se err non è nil
	// Se err non è nil, stampa: "Error occurred: " seguito dal messaggio di errore
	// HINT: Usa un'istruzione if per verificare se err != nil
	
	
	// Questa riga viene eseguita indipendentemente dal fatto che si sia verificato un errore
	fmt.Println("Program completed successfully")
}

// Questa funzione genera un errore
func generateError() error {
	return errors.New("something went wrong")
}
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Fondamenti

Esercitati da solo: Compilatore Go online