一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

腳本之家,腳本語言編程技術(shù)及教程分享平臺!
分類導(dǎo)航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務(wù)器之家 - 腳本之家 - PowerShell - Windows Powershell對象=屬性+方法

Windows Powershell對象=屬性+方法

2020-06-23 10:38Powershell教程網(wǎng) PowerShell

從今天開始,我們這個(gè)系列的教程進(jìn)入到講訴使用對象的階段,那么本階段的第一篇還是先來熟悉下概念,簡單的說對象=屬性+方法

在現(xiàn)實(shí)世界中,你可能已經(jīng)了解對象就是那些能夠摸到的東西。Powershell中的對象和現(xiàn)實(shí)生活很相似。例如要在現(xiàn)實(shí)生活中描述一把小刀。我們可能會分兩方面描述它
屬性:一把小刀擁有一些特殊的屬性,比如它的顏色、制造商、大小、刀片數(shù)。這個(gè)對象是紅色的,重55克,有3個(gè)刀片,ABC公司生產(chǎn)的。因此屬性描述了一個(gè)對象是什么。
方法:可以使用這個(gè)對象做什么,比如切東西、當(dāng)螺絲釘用、開啤酒蓋。一個(gè)對象能干什么就屬于這個(gè)對象的方法。

創(chuàng)建對象

通過New-Object可以創(chuàng)建一個(gè)對象,甚至可以創(chuàng)建一個(gè)虛擬的小刀,但是第一步需要?jiǎng)?chuàng)建一個(gè)空對象。空對象什么都沒有,如果調(diào)用它,不會返回任何東西。

復(fù)制代碼 代碼如下:

PS C:Powershell> $pocketknife=New-Object object
PS C:Powershell> $pocketknife
System.Object


增加屬性

 

接下來描述這個(gè)對象是什么

 

復(fù)制代碼 代碼如下:


PS C:Powershell> Add-Member -InputObject $pocketknife -Name Color -Value "Red"
-MemberType NoteProperty
PS C:Powershell> $pocketknife

 

Color
-----
Red

PS C:Powershell> Add-Member -InputObject $pocketknife -Name Weight -Value "55"
-MemberType NoteProperty
PS C:Powershell> $pocketknife | Add-Member NoteProperty Blades 3
PS C:Powershell> $pocketknife | Add-Member NoteProperty Manufacturer ABC
PS C:Powershell> $pocketknife

Color Weight Blades Manufacturer
----- ------ ------ ------------
Red   55          3 ABC


增加方法

 

給一個(gè)對象增加了屬性后,這個(gè)對象就有形狀了,但是它仍然不能做任何事,要想它做事,必須給它增加方法。同樣使用Add-Member,不過-memberType 選項(xiàng)使用ScriptMethod。

 

復(fù)制代碼 代碼如下:

# 增加一個(gè)新方法:
Add-Member -memberType ScriptMethod -In $pocketknife `
-name cut -Value { "I'm whittling now" }
# 指定參數(shù)類型增加一個(gè)新方法:
Add-Member -in $pocketknife ScriptMethod screw { "Phew...it's in!" }
#直接通過管道增加一個(gè)新方法:
$pocketknife | Add-Member ScriptMethod corkscrew { "Pop! Cheers!" }


方法添加成功后就可以調(diào)用了

復(fù)制代碼 代碼如下:

PS C:Powershell> $pocketknife.cut()
I'm whittling now
PS C:Powershell> $pocketknife.screw()
Phew...it's in!
PS C:Powershell> $pocketknife.corkscrew()
Pop! Cheers!

 

 

在調(diào)用方法時(shí)如果沒有使用圓括號,方法不會執(zhí)行,但是可以返回方法的基本信息。

復(fù)制代碼 代碼如下:


PS C:Powershell> $pocketknife.corkscrew

 

Script                      :  "Pop! Cheers!"
OverloadDefinitions : {System.Object corkscrew();}
MemberType           : ScriptMethod
TypeNameOfValue  : System.Object
Value                      : System.Object corkscrew();
Name                     : corkscrew
IsInstance               : True

 

 

到目前為止一個(gè)虛擬的小刀對象就創(chuàng)建完成了,一個(gè)對象包含數(shù)據(jù)(屬性)和動(dòng)作(方法)。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 太粗 好紧 使劲舒服 | 日本大尺度激情做爰叫床 | chinese国产打屁股 | 亚洲美女啪啪 | 国产免费资源 | 高清一区高清二区视频 | 奶茶视频官网免费 | 免费一级欧美片在线观看 | 91久久偷偷做嫩草影院电 | 久久国产加勒比精品无码 | 国产一区二区三区在线观看视频 | 亚洲国产成人精品无码区APP | 久久精品国产免费播放 | 四虎影视永久免费视频观看 | 草莓社区 | 国产色婷婷亚洲 | 午夜片神马影院福利 | 国产小视频在线免费观看 | 成人日b视频 | 亚飞与亚基国语1080p在线观看 | 2020年新四虎免费 | 性一交一无一伦一精一品 | 天天色资料 | 久久久久青草大香线综合精品 | 免费高清资源黄网站在线观看 | 欧美国产在线视频 | jk制服白丝超短裙流白浆 | 久久精品AV一区二区无码 | 久久人妻少妇嫩草AV無碼 | 国产欧美综合精品一区二区 | 久久精品午夜一区二区福利 | 99久久精品99999久久 | 欧美人在线一区二区三区 | 亚洲国产欧美日韩在线一区 | 午夜免费体验30分 | 日韩毛片在线视频 | 亚洲国产无线码在线观看 | 香蕉tv国产在线永久播放 | 国内精品久久久久久久 | 免费高清视频日本 | 欧美女孩13一14v |