日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

php实现享元模式,php设计模式 flyweight (享元模式)

發布時間:2024/4/13 php 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php实现享元模式,php设计模式 flyweight (享元模式) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

25種php設計模式,你全都知道嗎?下面用代碼介紹享元模式(flyweight模式)<?php

/**

*?享元模式

*

*?運用享元技術有效的支持大量細粒度的對象

*/

class?CD?{

private?$_title?=?null;

private?$_artist?=?null;

public?function?setTitle($title)?{

$this->_title?=?$title;

}

public?function?getTitle()?{

return?$this->_title;

}

public?function?setArtist($artist)?{

$this->_artist?=?$artist;

}

public?function?getArtist($artist)?{

return?$this->_artist;

}

}

class?Artist?{

private?$_name;

public?function?__construct($name)?{

echo?"construct?"?.?$name?.?"
";

$this->_name?=?$name;

}

public?function?getName()?{

return?$this->_name;

}

}

class?ArtistFactory?{

private?$_artists?=?array();

public?function?getArtist($name)?{

if?(isset($this->_artists[$name]))?{

return?$this->_artists[$name];

}?else?{

$objArtist?=?new?Artist($name);

$this->_artists[$name]?=?$objArtist;

return?$objArtist;

}

}

}

$objArtistFactory?=?new?ArtistFactory();

$objCD1?=?new?CD();

$objCD1->setTitle("title1");

$objCD1->setArtist($objArtistFactory->getArtist('artist1'));

$objCD2?=?new?CD();

$objCD2->setTitle("title2");

$objCD2->setArtist($objArtistFactory->getArtist('artist2'));

$objCD3?=?new?CD();

$objCD3->setTitle("title3");

$objCD3->setArtist($objArtistFactory->getArtist('artist1'));

其他相關設計模式:

轉載隨意,但請附上文章地址:-)

總結

以上是生活随笔為你收集整理的php实现享元模式,php设计模式 flyweight (享元模式)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。