誰(shuí)動(dòng)了我的代碼
抽象即是空,空即是抽象。
posts(43)
comments(24)
trackbacks(0)
BlogJava
聯(lián)系
聚合
管理
News
所有文章版權(quán)歸我所有,轉(zhuǎn)載請(qǐng)注明出處,謝謝!
常用鏈接
我的隨筆
我的評(píng)論
我的參與
最新評(píng)論
留言簿
給我留言
查看公開(kāi)留言
查看私人留言
隨筆分類
Android開(kāi)發(fā)(5)
C/C++(1)
DataBase(3)
Java(16)
JavaScript(14)
WEB前端(1)
編程雜項(xiàng)(2)
網(wǎng)絡(luò)(1)
隨筆檔案
2016年5月 (1)
2011年2月 (1)
2010年6月 (3)
2010年5月 (1)
2009年12月 (2)
2009年11月 (1)
2009年10月 (2)
2009年6月 (2)
2009年5月 (1)
2009年4月 (2)
2009年3月 (4)
2009年2月 (1)
2009年1月 (1)
2008年12月 (1)
2008年11月 (1)
2008年10月 (4)
2008年9月 (2)
2008年5月 (5)
2008年3月 (3)
2007年12月 (2)
2007年10月 (1)
2007年9月 (2)
2007年5月 (1)
搜索
最新評(píng)論
1.?re: Android之ImageView載入網(wǎng)絡(luò)上的圖片
222222222222222222222
--2222222222222222222222222222
2.?re: Log4j自帶Log Viewer的用法
執(zhí)行你的根本不行,亂錯(cuò)帖子就在這亂貼,tmd
--asdf
3.?re: Android之使用私有存儲(chǔ)
getDir方法創(chuàng)建的文件,會(huì)有個(gè)app_前綴,請(qǐng)問(wèn)這怎么去掉呢?
--就是寶寶
4.?re: Android通用事件造成的生命周期變化情況
我相信以后Android將成為越來(lái)越多設(shè)備的OS,不光是手持上網(wǎng)設(shè)置,冰箱、洗衣機(jī)都有可能采用Android。
--淘寶網(wǎng)女裝春裝新款
5.?re: Android通用事件造成的生命周期變化情況
不錯(cuò)
--歌瑞爾內(nèi)衣
閱讀排行榜
評(píng)論排行榜
View Post
面向?qū)ο蟮腏avaScript (一、對(duì)象基礎(chǔ),使用函數(shù)來(lái)模擬類)
通過(guò)一個(gè)例子可以很直觀的表述本主題,所以沒(méi)有任何其他的說(shuō)明文字,請(qǐng)看代碼吧。
1
function
Person(name, age)
{
2
3
//
私有變量(private variables)
4
var
myName
=
name;
5
var
myAge
=
age;
6
7
//
公共屬性(public properties)
8
this
.name
=
myName;
9
this
.age
=
myAge;
10
11
//
私有函數(shù)(private functions)
12
function
getMyName()
{
13
return
myName;
14
}
;
15
16
function
getName()
{
17
return
name;
18
}
;
19
20
var
getMyAge
=
function
()
{
21
return
myAge;
22
}
;
23
24
var
getAge
=
function
()
{
25
return
age;
26
}
;
27
28
//
特權(quán)方法(privileged methods)
29
this
.getName
=
function
()
{
30
return
this
.name;
31
//
return myName; 可以訪問(wèn)私有變量
32
//
return name; 可以訪問(wèn)構(gòu)造函數(shù)參數(shù)(其參數(shù)本質(zhì)也是私有變量)
33
//
return getMyName(); 可以訪問(wèn)私有函數(shù)
34
//
return getName(); 可以訪問(wèn)私有函數(shù)
35
}
;
36
37
this
.getAge
=
function
()
{
38
return
getAge();
39
}
;
40
41
this
.getRealAge
=
function
()
{
42
return
this
.age;
43
}
;
44
}
45
46
//
公共方法(public methods)
47
Person.prototype.acceptName
=
function
(param)
{
48
this
.name
=
param;
49
//
name = param; 公共方法不能訪問(wèn)私有變量
50
//
myName = param; 公共方法不能訪問(wèn)私有變量
51
}
;
52
53
//
原型屬性(prototype properties)
54
Person.prototype.legs
=
2
;
55
56
//
靜態(tài)屬性(static properties)
57
//
整個(gè)類只有一個(gè)靜態(tài)屬性,各個(gè)對(duì)象共享同一個(gè)靜態(tài)屬性值
58
Person.arms
=
2
;
59
60
Person.getArms
=
function
()
{
61
return
Person.arms;
62
//
return this.arms; 可以使用this來(lái)指代Person對(duì)象本身
63
}
;
64
65
/**/
/*
66
Person是一個(gè)邏輯上的類,他的本質(zhì)是一個(gè)Function,在JavaScript中類是由Function來(lái)模擬的,所以Person還是一個(gè)Function的實(shí)例。而arms和getArms方法是一個(gè)Function對(duì)象實(shí)例上的屬性和方法,是Person對(duì)象所特有的,所以本例可以使用Person.arms來(lái)引用,同時(shí)在getArms方法中,可以使用this.arms來(lái)引用,因?yàn)間etArms是Person對(duì)象上的方法,在該方法內(nèi)部this指代Person對(duì)象自身。
67
*/
68
alert(Person.getArms());
69
70
var
pa
=
new
Person(
"
Teddy
"
,
25
);
71
72
//
alert(pa.myName); 不能訪問(wèn)私有變量
73
74
alert(pa.name);
75
76
alert(pa.getAge());
77
78
pa.acceptName(
"
Born
"
);
79
80
alert(pa.getName());
81
82
var
pb
=
new
Person(
"
John
"
,
18
);
83
84
//
運(yùn)行時(shí)動(dòng)態(tài)加入方法
85
Person.prototype.acceptAge
=
function
(param)
{
86
this
.age
=
param;
87
}
;
88
89
//
pb對(duì)象也可以調(diào)用動(dòng)態(tài)添加的方法
90
pb.acceptAge(
30
);
91
92
alert(pb.getAge());
93
94
alert(pb.getRealAge());
95
96
//
運(yùn)行時(shí)覆蓋已定義方法
97
Person.prototype.acceptName
=
function
(param)
{
98
return
param;
99
}
;
100
101
//
所有已創(chuàng)建對(duì)象都自動(dòng)繼承被覆蓋的方法
102
alert(pa.acceptName(
"
Black
"
));
103
104
alert(pa.getName());
105
106
alert(pa.legs);
107
108
//
運(yùn)行時(shí)改變?cè)蛯傩灾?/span>
109
Person.prototype.legs
=
4
;
110
111
//
所有已創(chuàng)建對(duì)象都自動(dòng)繼承被改變的原型屬性值
112
alert(pb.legs);
113
114
//
運(yùn)行時(shí)將原型屬性改為公共方法
115
Person.prototype.legs
=
function
()
{
116
return
4
;
117
}
;
118
119
//
所有已創(chuàng)建對(duì)象都自動(dòng)繼承原型屬性到公共方法的改變
120
alert(pa.legs());
posted on 2008-09-03 19:09
Eric Song
閱讀(1291)
評(píng)論(1)
編輯
收藏
所屬分類:
JavaScript
View Comments
#
re: 面向?qū)ο蟮腏avaScript (一、對(duì)象基礎(chǔ),使用函數(shù)來(lái)模擬類)
回復(fù)
更多評(píng)論
不錯(cuò),等待下一篇
2008-09-04 11:28 |
HiMagic!
新用戶注冊(cè)
刷新評(píng)論列表
只有注冊(cè)用戶
登錄
后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航:
博客園
IT新聞
Chat2DB
C++博客
博問(wèn)
管理
相關(guān)文章:
關(guān)于樣式表對(duì)象style與currentStyle的區(qū)別
關(guān)于JavaScript的cloneNode方法對(duì)于節(jié)點(diǎn)上的事件clone問(wèn)題的研究。
參考Prototype的Class.create寫(xiě)了一個(gè)類似的實(shí)現(xiàn),但是不是Ruby like OOP,使用上更像Java。
對(duì)JavaScript的變量作用域的理解
IE document compatMode
JavaScript對(duì)form及form中的引用。
JavaScript注意事項(xiàng)(不定期更新)
在定義一個(gè)js類的時(shí)候,為什么要設(shè)置該類的prototype屬性為它所要繼承的類的實(shí)例對(duì)象
JavaScript 類型轉(zhuǎn)換注意事項(xiàng)
面向?qū)ο蟮腏avaScript(二,TSS上的一篇文章,先借鑒一下)
Powered by:
BlogJava
Copyright © Eric Song
主站蜘蛛池模板:
精品久久香蕉国产线看观看亚洲
|
国产黄在线播放免费观看
|
两个人看的www免费
|
国产高清在线免费视频
|
亚洲av日韩av无码av
|
日日麻批免费40分钟无码
|
亚洲国产精品VA在线看黑人
|
色窝窝亚洲av网
|
国产免费人成视频在线观看
|
国产亚洲精品成人AA片
|
亚洲高清视频免费
|
亚洲午夜精品一区二区公牛电影院
|
日本在线免费播放
|
亚洲成人黄色在线观看
|
亚洲一区免费在线观看
|
亚洲最大中文字幕
|
成年人视频在线观看免费
|
亚洲人精品亚洲人成在线
|
91网站免费观看
|
亚洲精品国产日韩
|
国产成人精品123区免费视频
|
亚洲熟妇无码AV
|
亚洲乱码中文字幕综合234
|
精品久久久久久国产免费了
|
免费永久国产在线视频
|
一级午夜免费视频
|
亚洲av日韩av无码
|
青青视频观看免费99
|
亚洲色偷偷综合亚洲AV伊人蜜桃
|
亚洲午夜电影在线观看
|
中文字幕免费在线看线人
|
亚洲一卡2卡3卡4卡国产网站
|
国产福利在线观看免费第一福利
|
亚洲精品456人成在线
|
性做久久久久免费看
|
一级毛片在线完整免费观看
|
亚洲综合激情另类专区
|
99免费视频观看
|
老司机午夜性生免费福利
|
四虎AV永久在线精品免费观看
|
污污视频免费观看网站
|