.net面試題
.net技術(shù)員在求職面試中,學(xué)會做好面試準(zhǔn)備,了解面試最新問題很有必要。下面小編已經(jīng)為你們整理了.net最新面試題,一起來看看吧。
.net最新面試題一
1.什么是受管制(托管)的代碼?
答:
托管代碼是運行.NET 公共語言運行時CLR的代碼
unsafe:非托管代碼。不經(jīng)過CLR運行。程序員自行分配和釋放內(nèi)存空間
2.什么是強(qiáng)命名程序集?
答:程序集需要經(jīng)過加密簽名,強(qiáng)命名程序集可以部署到全局程序集緩存中,成為公共程序集
3.net中讀寫數(shù)據(jù)庫需要用到那些類?他們的作用?
答:DataSet:數(shù)據(jù)集。
DataCommand:執(zhí)行語句命令。
4.ASP.net的身份驗證方式有哪些?分別是什么原理?
答:
Windwos(默認(rèn))用IIS控制 From(窗體)用帳戶 Passport(密鑰) Dataadapter:數(shù)據(jù)的集合,用語填充。 DataReader:數(shù)據(jù)只讀器
5.什么是Code-Behind技術(shù)?
答:代碼后置。
6.接口是否可繼承接口? 抽象類是否可實現(xiàn)(implements)接口? 抽象類是否可繼承實體類(concreteclass)?
答:接口可以繼承接口。
抽象類可以實現(xiàn)(implements)接口,抽象類是否可繼承實體類,但前提是實體類必須有明確的構(gòu)造函數(shù)。
7.構(gòu)造器(構(gòu)造函數(shù))Constructor是否可被override?
答:構(gòu)造器Constructor不能被繼承,因此不能重寫Overriding,但可以被重載Overloading。
8.是否可以繼承String類?
答:String類是密封類故不可以繼承。
9.try {}里有一個return語句,那么緊跟在這個try后的finally {}里的code會不會被執(zhí)行,什么時候被執(zhí)行,在return前還是后?
答:會執(zhí)行,在return前執(zhí)行。
.net最新面試題二
1.常用的調(diào)用WebService的方法有哪些?
答:01.使用WSDL.exe命令行工具。
02.使用VS.NET中的Add Web Reference菜單選項
2..net Remoting 的工作原理是什么?
答:服務(wù)器端向客戶端發(fā)送一個進(jìn)程編號,一個程序域編號,以確定對象的位置。
3.在C#中,string str = null 與 string str = “” 請盡量使用文字或圖象說明其中的區(qū)別。
答:string str = null 是不給他分配內(nèi)存空間,而string str = "" 給它分配長度為空字符串的內(nèi)存空間。
4.請詳述在dotnet中類(class)與結(jié)構(gòu)(struct)的異同?
答:class可以被實例化,屬于引用類型,class可以實現(xiàn)接口和單繼承其他類,還可以作為基類型,是分配在內(nèi)存的堆上的struct屬于值類型,不能作為基類型,但是可以實現(xiàn)接口,是分配在內(nèi)存的棧上的.
5.SQLSERVER服務(wù)器中,給定表 table1 中有兩個字段 ID、LastUpdateDate,ID表示更新的事務(wù)號,LastUpdateDate表示更新時的服務(wù)器時間,請使用一句SQL語句獲得最后更新的事務(wù)號
答:Select ID FROM table1 Where LastUpdateDate = (Select MAX(LastUpdateDate) FROM table1)
6.swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?
答:switch(expr1)中,expr1是一個整數(shù)表達(dá)式。因此傳遞給 switch 和 case 語句的參數(shù)應(yīng)該是int、 short、 char 或者 byte。long,string 都不能作用于swtich。
7.當(dāng)一個線程進(jìn)入一個對象的一個synchronized方法后,其它線程是否可進(jìn)入此對象的其它方法?
不能,一個對象的一個synchronized方法只能由一個線程訪問。
8.List, Set, Map是否繼承自Collection接口?
答:List,Set是Map不是
9.sleep() 和 wait() 有什么區(qū)別?
答:sleep()方法是使線程停止一段時間的方法。在sleep 時間間隔期滿后,線程不一定立即恢復(fù)執(zhí)行。
這是因為在那個時刻,其它線程可能正在運行而且沒有被調(diào)度為放棄執(zhí)行,除非(a)“醒來”的線程具有更高的優(yōu)先級
(b)正在運行的線程因為其它原因而阻塞。
wait()是線程交互時,如果線程對一個同步對象x 發(fā)出一個wait()調(diào)用,該線程會暫停執(zhí)行,被調(diào)對象進(jìn)入等待狀態(tài),直到被喚醒或等待時間到。
.net最新面試題三
1.簡要談一下您對微軟.NET 構(gòu)架下remoting和webservice兩項技術(shù)的理解以及實際中的應(yīng)用。
答:webservice主要是可利用HTTP,穿透防火墻。而Remoting可以利用TCP/IP,二進(jìn)制傳送提高效率。
2.寫出一條Sql語句:取出表A中第31到第40記錄(SQLServer,以自動增長的ID作為主鍵,注意:ID可能不是連續(xù)的。
答:解1: select top 10 * from A where id not in (select top 30 id from A)
解2: select top 10 * from A where id > (select max(id) from (select top 30 id from A)as A)
3.GC是什么? 為什么要有GC?
答:GC是垃圾收集器。程序員不用擔(dān)心內(nèi)存管理,因為垃圾收集器會自動進(jìn)行管理。要請求垃圾收集,可以調(diào)用下面的方法之一:
System.gc()
Runtime.getRuntime().gc()
4.String s = new String("xyz");創(chuàng)建了幾個String Object?
答:兩個對象,一個是“xyx”,一個是指向“xyx”的引用對象s。
5.啟動一個線程是用run()還是start()?
答:啟動一個線程是調(diào)用start()方法,使線程所代表的虛擬處理機(jī)處于可運行狀態(tài),這意味著它可以由JVM調(diào)度并執(zhí)行。這并不意味著線程就會立即運行。run()方法可以產(chǎn)生必須退出的標(biāo)志來停止一個線程。
6.談?wù)刦inal, finally, finalize的區(qū)別。
答:
final—修飾符(關(guān)鍵字)如果一個類被聲明為final,意味著它不能再派生出新的子類,不能作為父類被繼承。因此 一個類不能既被聲明為 abstract的,又被聲明為final的。將變量或方法聲明為final,可以保證它們在使用中 不被改變。被聲明為final的變量必須在聲明時給定初值,而在以后的引用中只能讀取,不可修改。被聲明為 final的方法也同樣只能使用,不能重載 finally—再異常處理時提供 finally 塊來執(zhí)行任何清除操作。如果拋出一個異常,那么相匹配的catch 子句就會 執(zhí)行,然后控制就會進(jìn)入 finally 塊(如果有的話)。
finalize—方法名。Java 技術(shù)允許使用 finalize() 方法在垃圾收集器將對象從內(nèi)存中清除出去之前做必要的清理 工作。這個方法是由垃圾收集器在確定這個對象沒有被引用時對這個對象調(diào)用的。它是在 Object 類中定義的 ,因此所有的類都繼承了它。子類覆蓋 finalize() 方法以整理系統(tǒng)資源或者執(zhí)行其他清理工作。finalize() 方法是在垃圾收集器刪除對象之前對這個對象調(diào)用的。
看了“.net最新面試題”