誰(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.亚洲成在线
|
久久久久久亚洲精品成人
|
久久国产精品2020免费m3u8
|
四虎永久成人免费
|
亚洲男人的天堂网站
|
高清国语自产拍免费视频国产
|
国产精品亚洲精品
|
成年午夜视频免费观看视频
|
亚洲综合av一区二区三区不卡
|
一二三四免费观看在线视频中文版
|
久久精品国产亚洲AV忘忧草18
|
蜜桃精品免费久久久久影院
|
亚洲av乱码一区二区三区
|
国产成人免费爽爽爽视频
|
亚洲日韩av无码中文
|
国产片免费福利片永久
|
精品在线观看免费
|
精品亚洲一区二区三区在线观看
|
丰满少妇作爱视频免费观看
|
美女视频黄a视频全免费
|
亚洲日韩国产精品乱-久
|
国产免费久久精品久久久
|
中美日韩在线网免费毛片视频
|
亚洲国产精品久久久久
|
国产91色综合久久免费
|
67194在线午夜亚洲
|
亚洲第一区精品日韩在线播放
|
久久免费国产精品
|
亚洲激情电影在线
|
国产免费人视频在线观看免费
|
ww在线观视频免费观看w
|
久久久久亚洲AV成人片
|
免费无码成人AV片在线在线播放
|
一级做a毛片免费视频
|
4480yy私人影院亚洲
|
日韩精品无码人妻免费视频
|
久久九九久精品国产免费直播
|
亚洲自偷精品视频自拍
|
国产免费啪嗒啪嗒视频看看
|
久久狠狠躁免费观看
|
亚洲AV日韩综合一区尤物
|