最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

12-抽象工廠方法模式(Easy搞定Golang設(shè)計模式)

2023-08-12 16:45 作者:senglin00001  | 我要投稿
package main

import "fmt"

type Computer struct {
   AbstractCpu
   AbstractMem
   AbstractDis
}

type AbstractCpu interface {
   computer()
}

type InterCpu struct {
}

func (c *InterCpu) computer() {
   fmt.Println(" inter cpu 計算功能")
}

type AbstractMem interface {
   storage()
}

type InterMem struct {
}

func (i *InterMem) storage() {
   fmt.Println("inter mem 存儲功能")
}

type AbstractDis interface {
   display()
}

type InterDis struct {
}

func (m *InterDis) display() {
   fmt.Println("顯卡具有顯示功能")
}

type ComputerFactory interface {
   CreateCpu() AbstractCpu
   CreateMem() AbstractMem
   CreateDis() AbstractDis
}

type InterComputerFactory struct{}

func (inter *InterComputerFactory) CreateCpu() AbstractCpu {
   fmt.Println("生成inter cpu")
   var cpu AbstractCpu
   cpu = new(InterCpu)
   return cpu
}

func (inter *InterComputerFactory) CreateMem() AbstractMem {
   fmt.Println("生成inter 內(nèi)存")
   var mem AbstractMem
   mem = new(InterMem)
   return mem
}
func (inter *InterComputerFactory) CreateDis() AbstractDis {
   fmt.Println("生成inter 顯示器")
   var dis AbstractDis
   dis = new(InterDis)
   return dis
}

func main() {
   var fac ComputerFactory
   fac = new(InterComputerFactory)
   interCpu := fac.CreateCpu()
   interMem := fac.CreateMem()
   interDis := fac.CreateDis()
   //組裝電腦
   com := Computer{interCpu, interMem, interDis}
   com.AbstractCpu.computer()
   com.AbstractMem.storage()
   com.AbstractDis.display()
}


12-抽象工廠方法模式(Easy搞定Golang設(shè)計模式)的評論 (共 條)

分享到微博請遵守國家法律
利川市| 台东县| 蕉岭县| 梅州市| 抚州市| 辽宁省| 威远县| 桃源县| 视频| 凤阳县| 巴南区| 仲巴县| 特克斯县| 佳木斯市| 横峰县| 湘乡市| 南康市| 祁门县| 邵武市| 鱼台县| 噶尔县| 安泽县| 清苑县| 昌江| 砚山县| 英山县| 南丰县| 南木林县| 宜昌市| 邓州市| 双辽市| 屏东市| 镇江市| 达孜县| 民县| 梧州市| 洮南市| 卓尼县| 额尔古纳市| 大埔县| 蒲江县|