將構(gòu)造器設(shè)為private,那么誰(shuí)也無(wú)法創(chuàng)建類的對(duì)象了,但現(xiàn)在別人怎么創(chuàng)建使用這個(gè)類?有兩種方法:第一,創(chuàng)建一個(gè)static方法,它創(chuàng)建一個(gè)新的此類的對(duì)象,并返回一個(gè)對(duì)他的引用。如果想在返回引用之前,做一些額外的工作,或者想知道記錄創(chuàng)建了多少個(gè)對(duì)象(可能要限制其對(duì)象的數(shù)量),這種做法將會(huì)大有裨益的。第二中選擇用到了所謂的設(shè)計(jì)模式,這種模式稱為“singleton”,這是因?yàn)槟闶冀K只能創(chuàng)建一個(gè)對(duì)象【通過(guò)在內(nèi)部生成一個(gè)static的private對(duì)象,然后用static的public方法返回這個(gè)對(duì)象的引用】。類的對(duì)象作為一個(gè)static private成員而創(chuàng)建的,所以有只有一個(gè),而起除非通過(guò)public方法返回這個(gè)引用,否則是無(wú)法訪問(wèn)它的。
只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。 | ||
![]() |
||
網(wǎng)站導(dǎo)航:
博客園
IT新聞
Chat2DB
C++博客
博問(wèn)
管理
|
||