c#基础知识
1.private、protected、public、internal修飾符的訪問權(quán)限
? Private:私有成員,只能在當(dāng)前類中才可以訪問
? Protected:保護(hù)成員,在當(dāng)前類和繼承類中訪問
? Public:公共成員,完全公開,沒有限制
? Internal:在統(tǒng)一命名空間下可訪問
2.例舉頁面?zhèn)髦档膸追N方式
? A:Querystring (對安全性要求不高,傳少量值)
Eg: response.redirect傳值 request.querystring接收
? B:Session(放置于服務(wù)器端的)
Eg:設(shè)置:session[“name”]=”hello”? ?
獲取:string name=session[“name”].tostring();
? C:cookie (放置于客戶端的)
Eg:設(shè)置:httpcookie cookie_name=new httpcookie(“name”);
cookie_name.value=label1.text;
Response.appendcookie(“cookie_name”)
接收:string name=request.cookie[“name”].value.tostring()
? D:application(全局的,所有用戶可見可修改,一般用作計數(shù))
Eg:設(shè)置:application[“name”]=”hello”
獲取:string name=application[“name”].tostring()
? E:server.transfer(面向?qū)ο箝_發(fā)者所使用)
定義類,放參數(shù)-->定義接口-->查詢頁面,繼承接口-->接收頁面
3.C#中委托是什么?事件是不是一種委托?
委托就是將方法作為參數(shù)傳入另一個方法,可理解為指向一個函數(shù)的引用
事件是一種特殊的委托
委托是一個類,定義了方法的類型,并將該方法作為參數(shù)傳入另一個方法中,用這個方法可避免大量使用if else 、switch方法,是的程序有了更好的擴(kuò)展性
4.重載(overloading)與重寫(overriding)
重載是一個類中多態(tài)的表現(xiàn),重寫是父類與子類中多態(tài)的表現(xiàn)
重載是多個方法名相同,但參數(shù)個數(shù)個類型不同
重寫是指子類重寫父類方法
5.什么叫應(yīng)用程序域?
可以理解為一種輕量級進(jìn)程,起到安全的作用,占用資源少。
6.什么是受管制的代碼?
Unsafe:非托管代碼,不經(jīng)過CLR運(yùn)行
7.CTS、CLS、CLR
CTS:通用類型系統(tǒng)
CLS:通用語言規(guī)范
CLR:公共語言運(yùn)行庫
8.什么是裝箱和拆箱
裝箱:將值類型轉(zhuǎn)化為引用類型
拆箱:將引用類型轉(zhuǎn)化為值類型
9.什么是強(qiáng)類型系統(tǒng)?
RTTI,類型識別系統(tǒng)
10.。net六大內(nèi)置對象
Response、request、server、session、application、cookie
11.Asp.net身份驗(yàn)證有哪些,分別是什么原理?
? Windows身份驗(yàn)證與IIS身份驗(yàn)證結(jié)合
? Form身份驗(yàn)證
? Passport身份驗(yàn)證
12.什么是Code_Behind技術(shù)?
代碼后植
13.在.net中,配件的意思是?
程序集,(中間語言、源數(shù)據(jù)、資源、裝配清單)
14..net Remoting的工作原理?
服務(wù)器端向客戶端發(fā)送一個進(jìn)程編號,一個程序域編號,以確定對象的位置
15.在c#中,string str=“”與string str=null的區(qū)別?
String str=“”分配了長度為空字符串的空間;
String str=null沒有分配空間
16.在。Net中類class與結(jié)構(gòu)struct的異同?
Class可以被實(shí)例化,屬于引用類型,存儲在內(nèi)存的堆上;
Struct屬于值類型,存儲在內(nèi)存的棧上
17.在微軟的。Net中,remoting和webservice的理解以及實(shí)際作用?
Remoting可利用TCP/IP,二進(jìn)制傳送提高效率;
Webservice可利用HTTP,穿透防火墻
18.面向?qū)ο蟮恼Z言具有繼承性、封裝性、多態(tài)性
19.能用foreach訪問的對象需要實(shí)現(xiàn)IEnumerable接口和GetEnumerator方法的類型
20.GC是什么以及原理?
垃圾收集器,垃圾收集器會自動管理內(nèi)存
System.gc()
Runtime.GetRuntime().gc()
21.String s=new String(“xyz”);創(chuàng)建了幾個string Object對象?
兩個,一個是xyz,一個是指向xyz的引用對象s
22.抽象類與接口的區(qū)別?
聲明的方法存在但不去實(shí)現(xiàn)它的類叫抽象類;接口是抽象類的變體,接口的方法都是抽象的,沒有一個方法體
23.啟用一個線程是用start()還是run()?
用start(),使線程所代表的虛擬機(jī)處可運(yùn)行狀態(tài),而run()方法可以產(chǎn)生一個必須退出的標(biāo)志來停止線程。
24.接口可繼承接口;抽象類可以實(shí)現(xiàn)接口;抽象類是否可繼承實(shí)體類前提是實(shí)體類必須要有明確的構(gòu)造數(shù)
25.構(gòu)造器constructor是否可被overriding?
構(gòu)造器不能被繼承,因此不能夠被重寫,但是可被重載
轉(zhuǎn)載于:https://www.cnblogs.com/zxhome/p/4130676.html
總結(jié)
- 上一篇: 2793 [Poi2012]Vouche
- 下一篇: C#入门基础01