iT邦幫忙

6

蠻可愛的golang #34 Interface介紹

今天介紹物件導向裡面的Interface

// hello39
package main

import (
	"fmt"
)

type 老鷹 interface {
	自我介紹() string
	未來事件() string
}

type 玉面飛鷹 struct {
	feature1 string
	feature2 string
}

func (jf *玉面飛鷹) 自我介紹() string {
	return fmt.Sprintf("大家好! 我是%s,%s的玉面飛鷹!", jf.feature1, jf.feature2)
}

func (jf *玉面飛鷹) 未來事件() string {
	return "20140831IT技術講堂以 CodeIgniter 為基礎的網頁前端與後段程式設計."
}

func main() {
	玉面飛鷹一號 := 玉面飛鷹{"人見人愛", "花見花開"}
	fmt.Printf("%s\n", 玉面飛鷹一號.自我介紹())
	fmt.Printf("未來事件:%s 請大家多多支持捧場!\n", 玉面飛鷹一號.未來事件())
}

執行結果:

λ ./hello39 
大家好! 我是人見人愛,花見花開的玉面飛鷹!
未來事件:20140831IT技術講堂以 CodeIgniter 為基礎的網頁前端與後段程式設計. 請大家多多支持捧場!

老鷹是interface,只有定義,沒有實作.
玉面飛鷹實作了自我介紹(), 未來事件().
玉面飛鷹一號是實例.


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
老鷹(eagle)
iT邦高手 1 級 ‧ 2014-08-15 15:59:17

臉紅臉紅臉紅
我又上榜了!
總裁在我後面很生氣逃跑

我要留言

立即登入留言