| 1234567891011121314151617181920212223242526272829303132333435363738394041 |
- package main
- import "fmt"
- type Base struct {
- id string
- }
- func (b *Base) Id() string {
- return b.id
- }
- func (b *Base) SetId(id string) {
- b.id = id
- }
- type Person struct {
- Base
- FirstName string
- LastName string
- }
- type Employee struct {
- Person
- salary float32
- }
- func main() {
- idjb := Base{"007"}
- jb := Person{idjb, "James", "Bond"}
- e := &Employee{jb, 100000.}
- fmt.Printf("ID of our hero: %v\n", e.Id())
- // Change the id:
- e.SetId("007B")
- fmt.Printf("The new ID of our hero: %v\n", e.Id())
- }
- /* Output:
- ID of our hero: 007
- The new ID of our hero: 007B
- */
|