本文介紹PowerShell面向?qū)ο缶幊痰幕A(chǔ)知識(shí),我們知道PowerShell里面的所有變量和輸出都是對(duì)象,所以有必要在進(jìn)行PowerShell編程時(shí)了解一下面向?qū)ο缶幊痰幕A(chǔ)知識(shí)。
面向?qū)ο缶幊痰囊胫饕菫榱私鉀Q軟件復(fù)雜化帶來(lái)的維護(hù)等問(wèn)題,早在20世紀(jì)60年代,面向?qū)ο缶鸵呀?jīng)出現(xiàn)了。雖然C語(yǔ)言并不支持面向?qū)ο蟮奶匦裕鞘褂肅語(yǔ)言進(jìn)行開(kāi)發(fā)的程序人員已經(jīng)將面向?qū)ο蟮暮诵乃枷霊?yīng)用到其中,因此我們更應(yīng)該理解的是面向?qū)ο蟮乃枷耄恍枰m纏于語(yǔ)言本身。
PowerShell是基于對(duì)象的腳本語(yǔ)言,因此下面的介紹中我們主要側(cè)重于介紹基本概念,并不會(huì)涉及如何進(jìn)行面向?qū)ο缶幊獭Mㄟ^(guò)下面知識(shí)的學(xué)習(xí),你將會(huì)了解PowerShell中需要掌握的基本對(duì)象知識(shí),從而深刻理解PowerShell采用基于對(duì)象的管理帶來(lái)的優(yōu)勢(shì)。
類(Class)
為物體(或者說(shuō)是對(duì)象)定義的抽象特性,這些特性包括物體的特征(它的屬性、域或特性)以及物體的行為(它可以做得事情、方法或操作)。某些人會(huì)說(shuō)類就像是設(shè)計(jì)圖或工廠一樣,用來(lái)描述某些事物的自然特性。打個(gè)比方來(lái)說(shuō),狗這個(gè)類可能包含所有狗包含的共性,例如:品種和皮毛顏色(它們都是狗的特征)、叫和坐下(它們都是狗的行為)。
對(duì)象(Object)
類的特定實(shí)例(Instance)。解釋很抽象?對(duì)象可以看做是你家的狗,或者你家鄰居的狗。無(wú)論如何,它們都是狗類的實(shí)例。狗類定義一部分所有狗都具有的特性,例如:三條(顯然狗主人很喜歡打麻將)是一只真實(shí)存在的狗,狗類中的信息就可以用來(lái)描述三條與其他狗的不同,三條的皮毛是棕色的。我們可以知道三條被歸類為犬科,是狗類的一個(gè)實(shí)例。
方法(Method)
對(duì)象的能力。三條是一條狗,它能夠叫,因此叫就是三條的方法。三條也許還有其他的方法,例如:原地轉(zhuǎn)圈、作揖、坐下等等。
繼承 (Inheritance)
子類是一個(gè)類的特殊版本,它繼承父類的屬性和行為,并引入自己特有的屬性和行為。
我們還是回到前面的例子討論,狗按照品種劃分有很多種,例如:黃金牧羊犬、柯利牧羊犬和吉娃娃。三條是柯利牧羊犬的實(shí)例,例如狗類中已經(jīng)定了了方法叫和屬性皮毛顏色。所以每一個(gè)狗類的子類都可以直接繼承這些信息,不需要額外重新定義這些冗余的信息。
子類可以改變繼承的特性。例如:柯利牧羊犬可能指定默認(rèn)的皮毛顏色為棕色和白色。而吉娃娃子類可能默認(rèn)指定方法“叫”是產(chǎn)生高音調(diào)的叫聲。子類還允許引入新成員,例如吉娃娃子類可能引入方法“顫抖”(吉娃娃的膽子很小,所以遇到危險(xiǎn)就會(huì)顫抖)。吉娃娃對(duì)象還有一個(gè)顫抖的方法,但是三條沒(méi)有,這是因?yàn)槿龡l是柯利牧羊犬,而不是吉娃娃。
|
新聞熱點(diǎn)
疑難解答
圖片精選