青鳥IT培訓(xùn):在asp.net中KindEditor編輯器的使用總結(jié)
北大青鳥新推出的ACCP課程是專業(yè)針對(duì)初中生的,開設(shè)的軟件課程有JAVA和.NET兩個(gè)方向的課程,今天就給大家介紹下在asp.net中KindEditor編輯器的一些使用方法總結(jié)。
CLR類型系統(tǒng)有兩種主要類型—Reference Type和ValueType。前者是在托管堆中被分配內(nèi)存并接受管理,后者則有兩種形態(tài)--裝箱與未裝箱,對(duì)于裝箱形態(tài)的值對(duì)象是在托管堆中,未裝箱形態(tài)的值對(duì)象是在棧上分配。
1、CLR堆上對(duì)象和棧上對(duì)象的差異
每一個(gè)堆上對(duì)象都有兩個(gè)額外的字段,一個(gè)是類型引用表的指針,用于實(shí)現(xiàn)多態(tài),類似于C++的多態(tài)機(jī)制,另一個(gè)字段是SyncBlockIndex,用于實(shí)現(xiàn)CLR線程同步機(jī)制。棧上對(duì)象則無這兩個(gè)字段。/
2、裝箱的過程
在堆上開辟內(nèi)存,包括2個(gè)額外字段+值對(duì)象大小。
將值對(duì)象復(fù)制過去
3.返回新分配對(duì)象的地址。
3、拆箱的過程
1.如果為null,跑出NullReferenceException
2.如果引用指向的不是一個(gè)期望對(duì)象的已裝箱對(duì)象,跑出InvalidCastException。
3.得到堆上引用對(duì)象中未裝箱對(duì)象的指針。
對(duì)比上述裝箱和拆箱的過程,可以看出兩者并非是互為反操作,拆箱過程本身并不涉及內(nèi)存操作,不會(huì)像裝箱那樣拷貝數(shù)據(jù),但是拆箱之后通常也還是要將值從堆上進(jìn)行拷貝的棧上的。
性能差異
了解了裝箱和拆箱的操作,我們可以清楚的明白:裝箱操作會(huì)導(dǎo)致數(shù)據(jù)在堆和棧上進(jìn)行拷貝,頻繁的裝箱操作會(huì)性能損失。而相比而言拆箱過程對(duì)性能損耗還是比較小的。發(fā)現(xiàn)代碼中的裝箱和拆箱操作:
1、Int32 a = 100;
object b = a;//(A)
a = (int)b;//(B)
(A)發(fā)生一次裝箱操作
(B)發(fā)生一次拆箱操作。
2、Point p = new Point(1,5);
Console.WriteLine(p.Clone());//(A)
var p2 = p as ICloneable;//(B)
var p3 = (Point)p2;//(C)
(A):Point重載了Clone()方法,所以這一步無需借助多態(tài),p本身不會(huì)被裝箱。但是要注意:Clone返回的是一個(gè)object,所以這一步會(huì)出現(xiàn)一個(gè)裝箱操作。
(B):會(huì)產(chǎn)生裝箱操作
(C):這一步會(huì)出現(xiàn)拆箱操作,并發(fā)生內(nèi)存拷貝(從托管堆上拷貝到棧上)。
使用ILDASM查看IL代碼
vs自帶的tools里提供了一個(gè)ILDASM的工具,能夠查看程序集的IL代碼。
在vs的命令行環(huán)境下(command prompt)執(zhí)行“ILDASM /adv”,/adv參數(shù)能開啟一些高級(jí)操作。打開一個(gè)未混效過的程序集,我們就能查看到其IL代碼,相信您能從中發(fā)現(xiàn)更多有趣的東西:)
以上就是.NET課程的相關(guān)知識(shí),其實(shí).NET就是一個(gè)系統(tǒng)平臺(tái),借此平臺(tái)利用我們所掌握的語言,實(shí)現(xiàn)一定的功能需求就完成了一個(gè)項(xiàng)目,學(xué)習(xí)軟件也是非常輕松的事情,只要你有一定的計(jì)算機(jī)基礎(chǔ)就能輕松上手。想要學(xué)習(xí)的你就趕緊來河南北大青鳥鄭州網(wǎng)絡(luò)工程師培訓(xùn)學(xué)校報(bào)名吧。
本文源自:http://i3061.cn 轉(zhuǎn)載請(qǐng)注明出處!
本文由站河南北大青鳥校區(qū)整編而成,如需了解更多IT資訊類的文章、新聞、課程和學(xué)習(xí)技巧、就業(yè)案例、招生詳情等問題,可以對(duì)在線咨詢老師進(jìn)行一對(duì)一問答!
推薦資訊
- 鄭州那家技校好... 2019-02-21
- 優(yōu)酷土豆合并:是否真是因?yàn)椤皭矍?.. 2012-10-13
- 鄭州計(jì)算機(jī)專業(yè)學(xué)什么... 2019-02-18
- 學(xué)Android課程到北大青鳥,做最有... 2012-10-13
- 春節(jié)過后學(xué)習(xí)java培訓(xùn)去哪里好... 2014-01-16
熱點(diǎn)資訊
- 電腦溫度多少是正常的情況呢?... 2018-09-07
- 四個(gè)策略及簡(jiǎn)單的防護(hù)方法... 2018-09-07
- 對(duì)硬盤進(jìn)行雙分區(qū)有什么好處... 2018-09-07
- 文件加密的幾個(gè)簡(jiǎn)單方法... 2018-09-07
- 計(jì)算機(jī)小技巧,80G硬盤巧變變成... 2018-09-07