Go Methods

From NovaOrdis Knowledge Base
Revision as of 00:33, 31 August 2024 by Ovidiu (talk | contribs) (→‎Overview)
Jump to navigation Jump to search

Internal

Overview

Go allows associating arbitrary behavior with built-in or custom types, which contributes to the object-oriented character of the language. Note that Go is not a fully object-oriented language, it misses type inheritance, for example.

Syntactically, the association of the behavior with the type is done by declaring a function (the behavior) and adding to its signature a receiver type (the type).

func (t ReceiverType) FunctionName(parameters, ...) (return_types, ...) {
 ...
}

As result of this association, the function becomes a method of the type.