Go Methods: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 3: Line 3:
=Overview=
=Overview=


Go allows associating arbitrary [[Object-Oriented_Programming#Associating_Behavior_with_Types|behavior]] with built-in or custom [[Go_Language#Type|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.
Go allows associating arbitrary [[Object-Oriented_Programming#Associating_Behavior_with_Types|behavior]] with built-in or custom [[Go_Language#Type|types]], which contributes to the object-oriented character of the language. Note that Go is not a fully object-oriented language, it misses [[Go_Inheritance_and_Polymorphism#Go_Does_Not_Have_Type_Inheritance|type inheritance]], for example.
 
Syntactically, the association of behavior with a type is done by declaring a function (the behavior) and adding to it a '''receiver type''' (the type).
 
<font size=-1.5>
<font color='blue'><b>func</b></font> (t T) <font color=teal>FunctionName</font>(parameters) (return type){
...
}
</font>

Revision as of 00:27, 31 August 2024

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 behavior with a type is done by declaring a function (the behavior) and adding to it a receiver type (the type).

func (t T) FunctionName(parameters) (return type){

...

}