method_on_time.go 505 B

1234567891011121314151617181920212223242526
  1. // method_on_time.go
  2. package main
  3. import (
  4. "fmt"
  5. "time"
  6. )
  7. type myTime struct {
  8. time.Time //anonymous field
  9. }
  10. func (t myTime) first3Chars() string {
  11. return t.Time.String()[0:3]
  12. }
  13. func main() {
  14. m := myTime{time.Now()}
  15. fmt.Println("Full time now:", m.String()) //calling existing String method on anonymous Time field
  16. fmt.Println("First 3 chars:", m.first3Chars()) //calling myTime.first3Chars
  17. }
  18. /* Output:
  19. Full time now: Mon Oct 24 15:34:54 Romance Daylight Time 2011
  20. First 3 chars: Mon
  21. */