How do I make the below code works? I want to call the Age method with Gents type.
package main
type Man struct {
}
func (man *Man) Age() {
}
type Gents Man
func main() {
var m1 Man
m1.Age()
var g1 Gents
g1.Age()
}
How do I make the below code works? I want to call the Age method with Gents type.
package main
type Man struct {
}
func (man *Man) Age() {
}
type Gents Man
func main() {
var m1 Man
m1.Age()
var g1 Gents
g1.Age()
}
Basically, you want to do inheritance
package main
import "fmt"
type Man struct {
Year int
}
func (man *Man) Age() int {
return 2022 - man.Year
}
type Gents struct {
Man // anonymous field
}
func main() {
var m1 = Man{
Year: 1995,
}
fmt.Println(m1.Age()) // 27
var g1 = Gents{
Man{
Year: 2002,
},
}
fmt.Println(g1.Age()) // 20
}