国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 課堂 > FAQ問(wèn)答 > 正文

工廠模式與內(nèi)存分配之間有什么聯(lián)系?

2020-03-22 17:57:27
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
本篇文章給大家?guī)?lái)的內(nèi)容是介紹工廠模式與內(nèi)存分配,以及工廠模式與內(nèi)存分配之間的聯(lián)系。有一定的參考價(jià)值,有需要的朋友可以參考一下,希望對(duì)你有所幫助。

 

一、什么是工廠模式

1、工廠模式就是負(fù)責(zé)生產(chǎn)其他對(duì)象的類(lèi)或方法,常用的工廠模式的一個(gè)用法:

 ?php html' target='_blank'>class ExportIndustryObj{ public $_obj; public function getObj(){ if(!$this- _obj){ $this- _obj = new Test(); return $this- _obj; class Test{ public function __construct(){ echo 121111; $obj2 = $industry- getObj(); var_dump($obj1,$obj2);

2、上述代碼執(zhí)行后:

1.png

3、代碼分析:

(1)代碼中輸出了兩個(gè)對(duì)象,分部是$obj1和$obj2,輸出了一次construct中的數(shù)字,兩個(gè)對(duì)象編號(hào)一樣(2)由此可見(jiàn),工廠模式可以做到一點(diǎn),就是只new一次對(duì)象
二、對(duì)象在內(nèi)存中是如何分配的呢?

1、內(nèi)存從分配角度大體可以分為四種類(lèi)型:棧空間段、堆空間段、代碼段、初始化靜態(tài)段。

2、棧空間段是存儲(chǔ)占用相同空間長(zhǎng)度并且占用空間較小的數(shù)據(jù)類(lèi)型的地方,比如說(shuō)整型1,10,100,1000,10000,100000 等等,在內(nèi)存里面占用空間是等長(zhǎng)的,都是64 位4 個(gè)字節(jié)。

3、堆空間段是存儲(chǔ)數(shù)據(jù)長(zhǎng)度不定且占用空間較大的數(shù)據(jù)類(lèi)型,例如對(duì)象。

4、代碼段是存儲(chǔ)執(zhí)行程序代碼本身的地方。

5、數(shù)據(jù)段是存儲(chǔ)初始化且不為0的全局變量,如靜態(tài)變量和常量。

6、內(nèi)存分配圖示:

2.png

7、棧內(nèi)存是可以直接存取的,而堆內(nèi)存不可以直接存取。

8、對(duì)于我們的對(duì)象來(lái)說(shuō)就是一種大的數(shù)據(jù)類(lèi)型而且是占用空間不定長(zhǎng)的類(lèi)型,所以說(shuō)對(duì)象本身是放在堆里面的,但對(duì)象名稱(chēng)是放在棧里面的,這樣通過(guò)對(duì)象名稱(chēng)就可以使用對(duì)象了

9、對(duì)象的圖示:

3.png

10、上圖可以看到,對(duì)象名是存在棧中,new了三個(gè)person對(duì)象,三個(gè)具體的對(duì)象信息存在堆中。

三、工廠模式與內(nèi)存分配之間的聯(lián)系

1、總結(jié)起來(lái)可以知道,工廠模式就是盡可能的只創(chuàng)建一次對(duì)象,從而在堆空間中不用創(chuàng)建重復(fù)的對(duì)象導(dǎo)致空間浪費(fèi),因?yàn)槎芽臻g本身是不定長(zhǎng)的且空間較大。

2、工廠模式,提取關(guān)鍵詞,就是“只new一次對(duì)象”、“節(jié)省堆空間”。

相關(guān)視頻教程推薦:《PHP教程》

以上就是本篇文章的全部?jī)?nèi)容,希望能對(duì)大家的學(xué)習(xí)有所幫助。更多精彩內(nèi)容大家可以關(guān)注php 相關(guān)教程欄目!!!

以上就是工廠模式與內(nèi)存分配之間有什么聯(lián)系?的詳細(xì)內(nèi)容,PHP教程

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 宁城县| 固镇县| 嘉义市| 阿城市| 漠河县| 镇平县| 阿坝县| 达日县| 屏东市| 石首市| 石林| 凌海市| 拜城县| 广西| 石景山区| 东阳市| 锡林郭勒盟| 南部县| 隆德县| 苍梧县| 呼伦贝尔市| 曲阳县| 章丘市| 贵南县| 静宁县| 靖宇县| 乐山市| 酒泉市| 当阳市| 柘荣县| 新乡县| 涟源市| 双桥区| 桂阳县| 湛江市| 永年县| 屏东市| 平阴县| 清远市| 莱阳市| 南平市|