Just a bit of syntactic sugar for Go's composition and methods.
// Base class Foo
type foo class {
(f) Test() {
fmt.Println("foo!")
}
}
// Class Bar derived from Foo
type bar class foo {
(f) Test() {
f.foo.Test()
fmt.Println("bar!")
}
}
...
barInstance := bar{}
barInstance.Test()