;
帖子
3919 
精华
积分
11710 
鱼币
0 ¥ 
来自
大连 
在线时间
1858 小时 
注册时间
2007-6-11 
最后登录
2009-10-20 

贴图大师勋章新人进步勋章宣传大使勋章论坛元老勋章

3
发表于 2009-1-5 19:48 | 只看该作者
VB.net鍏ラ棬(10):琛ュ厖锛氱被~灞炴 - 缂栫▼搴 - Powered by SupeSite

浣犵殑浣嶇疆锛缂栫▼搴 >> 璧勮 >> VB.NET >> vb.net鏁欑▼ >> 璇︾粏鍐呭 鍦ㄧ嚎鎶曠ǹ

VB.net鍏ラ棬(10):琛ュ厖锛氱被~灞炴

鍙戝竷: 2008-6-26 22:00 |  浣滆: admin |   鏌ョ湅: 15娆

鍒氬垰鍙戠幇绫昏繕娌℃湁鍐欏畬锛岃繕鏈変竴涓瘮杈冨ぇ鐨勯儴鍒嗭細灞炴(Property)銆

Property鍦↗ava鍜孋++閲岄潰閮芥槸闂绘墍鏈椈鐨勩傞氬父璁や负绫诲綋涓彧瑕佹湁鎴愬憳鍜屾柟娉曞氨琛屼簡銆傝嚦浜庡睘鎬у憿锛屽綋浣跨敤鐨勬椂鍊欙紝灞炴х湅璧锋潵灏卞儚鎴愬憳锛屽睘鎬у拰鎴愬憳鏈夊緢澶氱浉浼间箣澶勩備絾鏄睘鎬ф湁鏇村鐙壒涔嬪锛屽畠鍙互璇存槸VB鐨勪竴澶х壒鑹层傛垜鐨勭悊瑙e氨鏄睘鎬ф槸涓轰簡鏇村ソ鐨勫鎴愬憳杩涜澶勭悊鑰屽瓨鍦ㄧ殑銆

灞炴ф槸杩欐牱涓绉嶄笢瑗匡紝瀹冪湅璧锋潵鍍忔槸鎴愬憳锛屼絾鏈川涓婂畠鏄嚱鏁般傚睘鎬х殑瀹氫箟鏄繖鏍风殑锛

public property MyProperty() as Object 'MyProperty鏄睘鎬х殑鍚嶅瓧

Get '杩欎釜鍦版柟涓嶈兘鎵撴嫭鍙

return mvarMyProperty

end Get

Set(Byval Value as Object)

mvarMyProperty = Value

end Set

end Property

鍙互鐪嬪埌锛屽睘鎬у叾瀹炴槸鐢变袱涓嚱鏁扮粍鎴愮殑锛欸et 鍜 Set()銆傚綋鎴戜滑璇诲彇灞炴х殑鏃跺欙紝瀹冨氨璋冪敤Get锛屾墍浠et閲岄潰蹇呴』鏈塺eturn璇彞锛涘綋璁剧疆灞炴х殑鏃跺欙紝瀹冨氨璋冪敤Set()锛屾墍浠et()鏄甫鍙傛暟鐨勩傚綋澶栫晫璇诲彇MyProperty鐨勬椂鍊欙紝MyProperty灏辫繑鍥瀖varMyProperty銆俶varMyProperty鏄簨鍏堝0鏄庡ソ鐨勫彉閲忋傚綋澶栫晫璁剧疆MyProperty鐨勬椂鍊欙紝鎵璧嬬殑鍊煎氨璧嬬粰mvarMyProperty銆傚湪杩欓噷锛宮var-鏄疺B6涓己鐪佷娇鐢ㄧ殑鍓嶇紑锛岃〃鏄庤繖鏄竴涓瓨鏀惧睘鎬х殑鍙橀噺銆

鍒拌繖閲屼綘鍙兘鐞嗚В浜嗭紝灞炴ф湰韬笉淇濆瓨鏁版嵁锛屽畠閫氳繃鍙︿竴涓彉閲忔潵璇诲啓銆備絾鏄繖鍙堟槸涓浠跺鎬殑浜嬶細鏈夊繀瑕佽繖涔堥夯鐑﹀悧锛熸垜鐩存帴鍐欙細

public MyProperty As Object

涓嶆槸鏇寸畝鍗曞悧锛

杩欓噷鏈変竴涓畝鍗曠殑瑙i噴锛氶氳繃Property锛屾垜浠彲浠ラ殣钘忕湡瀹炵殑鎴愬憳锛屾瘮濡俶varMyProperty鎴戜滑灏卞彲浠ュ畾涔変负锛

private mvarMyProperty As Object

杩欐牱涓鏉ワ紝澶栫晫灏辩湅涓嶅埌mvarMyProperty锛屽彧鑳界湅鍒癕yProperty銆傚綋澶栫晫瀵瑰叾杩涜璇诲啓鐨勬椂鍊欙紝涓棿灏辨湁涓涓鐞嗚繃绋嬶紝鐢ㄦ潵閬垮厤瀵规垚鍛樼殑涓嶆纭殑璧嬪笺傚叾瀹炲浜庤繖绉嶆儏鍐碉紝java鍜孋++涔熸湁绫讳技鐨勫仛娉曪紝灏辨槸浣跨敤SetMyProperty()鍑芥暟鍜孏etMyProperty()鍑芥暟銆俈B鐢≒roperty杩欑鐗规畩鐨勬牸寮忓皢瀹冧滑鍋氬埌涓璧凤紝鏄惧緱鏇寸畝鍗曟柟渚夸簡銆

濂戒簡锛屽埌杩欓噷锛屼綘涓嶆兂鐪嬬湅瀹屾暣鐨勪緥瀛愬悧锛熻繖閲岄噸鏂板啓浜嗕竴涓狧uman绫伙紝褰撲腑鏈変竴涓狝ge锛堝勾榫勶級灞炴с傛垜浠湅鐪嬪畠鏄庢牱闃绘鎶婁竴涓汉鐨勫勾榫勮涓鸿礋鍊肩殑锛

imports System

public module MyModule

sub Main

dim LaoWang as new Human

LaoWang.Name = "鑰佺帇"

LaoWang.Age = 52

LaoWang.Age = 330 '杩欏彞璇濇湁娌℃湁鎶婅佺帇鐨勫勾榫勮涓330宀佸憿锛熺湅鐪嬩笅涓鍙ョ殑缁撴灉灏辩煡閬撲簡銆

Console.WriteLine("{0}鐜板湪{1}宀併", LaoWang.Name, LaoWang.Age)

Console.ReadLine()

end sub

end module

public class Human

public Name as String

dim mvarAge as integer '杩欓噷娌℃湁鎸囨槑鏄痯ublic杩樻槸private锛屽洜涓虹己鐪佺姸鎬佹槸private

public property Age() as integer

Get

return mvarAge

end Get

Set(Byval Value as integer)

if Value<=0 or Value>=200 then '閫氬父骞撮緞涓嶅簲璇ュ皬浜1鎴栧ぇ浜200

Console.WriteLine(Value & "宀侊紵鎴戞浜嗗悧锛")

else

mvarAge = value

end if

end set

end property

end class

鍒拌繖閲屼綘搴旇闂洰鍏荤涓浼氬効锛氬師鏉ュ睘鎬ф槸杩欐牱瀛愮殑鍟婏紒

浣嗘槸璇濋杩樻病鏈夊畬銆

姣斿璇达紝濡傛灉鎴愬憳鏄竴涓暟缁勶紝鎴戣鎬庢牱涓哄畠寤虹珛灞炴у憿锛熶负褰撲腑鐨勬瘡涓涓厓绱犲缓绔嬪悧锛熼偅鏁扮粍澶у皬鍙樺寲浜嗘庝箞鍔烇紵Property鎵嶄笉浼氳繖涔堣牏銆傛垜浠妇涓緥瀛愩傛瘮鏂规垜浠粰Human绫绘坊鍔犱竴涓暟缁勬垚鍛楥hildren锛岃〃绀轰竴涓汉鏈夊灏戜釜瀛╁瓙銆傛垜浠厛瀹氫箟mvarChildren锛

dim mvarChildren() as Human

涓哄叾寤虹珛灞炴ф湁涓ょ鏂瑰紡銆備竴绉嶆槸鐩存帴灏嗗睘鎬х殑绫诲瀷璁句负鏁扮粍锛

public property Children() as Human()

Get

return mvarChildren

end Get

Set(Byval Value as Human())

mvarChildren = value

end Set

end property

閭d箞鎴戜滑灏卞彲浠ュ儚浣跨敤鏁扮粍涓鏍锋潵浣跨敤杩欎釜灞炴т簡銆

鍙︿竴绉嶆槸鍦ㄨ鍙栧睘鎬х殑鏃跺欎紶鍏ュ弬鏁癷ndex锛

Public Property Children(ByVal index As Integer) As Human

Get

Return mvarChildren(index)

End Get

Set(ByVal Value As Human)

mvarChildren(index) = Value

End Set

End Property

杩欐牱鍙互瀵逛紶鍏ョ殑涓嬫爣杩涜妫鏌ャ

杩欓噷鎻愬埌璇诲彇灞炴х殑鏃跺欏彲浠ョ粰鍙傛暟銆傝繖鏄緢鏈夎叮鐨勪竴涓笢瑗裤傛瘮濡傝佺帇鏈3涓皬瀛╋紝鍏朵腑涓涓彨鈥滅帇鍗庘濄傛垜鎯虫牴鎹悕瀛楁潵寰楀埌杩欎釜灏忓锛屾垜鍙互鍐欎竴涓嚱鏁

public function GetChildByName(Byval Name as string) as Human '鍐呭鐪佺暐浜

鐒跺悗璋冪敤

LaoWang.GetChildByName("鐜嬪崕")

灏卞彲浠ヤ簡銆

瑕佸啓鎴愬睘鎬х殑璇濓紝鎴戜滑鍙互杩欐牱鍐欙細

public property Child(byval Name as string) as Human

Get

return getChildByName(Name)

end get

set(byval Value as Human)

鎵撳嵃 | 鏀惰棌姝ら〉 |  鎺ㄨ崘缁欏ソ鍙 | 涓炬姤
涓婁竴绡 涓嬩竴绡
 

璇勫垎锛0

鍙戣〃璇勮
鏌ョ湅鍏ㄩ儴鍥炲銆愬凡鏈0浣嶇綉鍙嬪彂琛ㄤ簡鐪嬫硶銆