標籤:使用 中文 附加 演算法實現 編譯器 類成員 code 點擊 特定
**********[整理]C#.Net的常見面試試題附答案(ZT)找工作的朋友可能會用的到。 我本身不是太懂倒耐特,上星期有朋友來我這找工作他整理的,所以我只負責發貼,對疑問的解答還要交給你們了。 //-------- 1.物件導向的思想主要包括什嗎? 1 繼承 多態 封裝 //-------- 2.什麼是ASP.net中的使用者控制項 2 使用者控制項. 不會說懂得做//-------- 3.什麼叫應用程式定義域?什麼是受管制的代碼?什麼是強型別系統?什麼是裝箱和拆箱?什麼是重載?CTS、CLS和CLR分別作何解釋? 3 裝箱和拆箱發生 實值型別向參考型別轉換,和參考型別向實值型別轉 重載:同一個函數參數不同//-------- 4.列舉一下你所瞭解的XML技術及其應用 4.xml可以用來做網頁(xslt) xml可以當作資料庫 xml可以用來儲存對象的系列化//-------- 5.實值型別和參考型別的區別?寫出C#的範例代碼。 5實值型別,沒有什麼好說的.參考型別用處是返回兩個以上參數的時候比較好用 ref out 我常用的是out不要先賦值//-------- 6.ADO.net中常用的對象有哪些?分別描述一下。 6 ado.net 我直接用 sqlhelper了 有connection command 還有參數//-------- 7.如何理解委託?7 回調機制比較有用的.在net中採用了委託.//-------- 8.C#中的介面和類有什麼異同。8 介面,是可以多繼承,類只有單繼承.介面強調了你必須實現,而沒有具本實現的方法和虛類有點相似//-------- 9.。net中讀寫資料庫需要用到哪些類?他們的作用 9 datareader dataset 還有一個不太常用//-------- 10.UDP串連和TCP串連的異同。 10 udp不要實現什麼三向交握.//-------- 11.ASP.net的身分識別驗證方式有哪些?分別是什麼原理? 11 asp.net身分識別驗證最常用還是以前的session方法. form驗證沒有用過. 微軟的哪個也沒有用過//-------- 12.進程和線程分別怎麼理解?進程是系統進行資源分派和調度的單位;線程是CPU調度和指派的單位,一個進程可以有多個線程,這些線程共用這個進程的資源。//-------- 13.什麼是code-Behind技術。 13 代碼後置..不懂得講//-------- 14.活動目錄的作用。 14 活動目錄.. 完全不會//-------- 15..net中讀寫XML的類都歸屬於哪些命名空間? 15 system.xml (system.io建立目錄的時候用)//-------- 16.解釋一下UDDI、WSDL的意義及其作用。 16 這個也是web服務裡的東西.//-------- 17.什麼是SOAP,有哪些應用。 17 soap簡單協議.我只知道.web服務是基於它之上的--------------------------------------------------------------------------------------------------18.如何部署一個ASP.net頁面。 18 部置一個頁面. 也就是說沒有代碼是直接寫在aspx中的了.只接放在IIS的虛擬目錄下就行了.當然要asp.net支援//-------- 19.如何理解.net中的記憶體回收機制。 19 記憶體回收..一般的只要掌握.非託管對象要記得釋放資源就行了吧.//-------- 20.常用的調用webservice方法有哪些? 20 直接在vs.net裡面引用就OK了.它會自己產生一個代理類 //-------- 1、進程和線程的區別 進程是系統進行資源分派和調度的單位;線程是CPU調度和指派的單位,一個進程可以有多個線程,這些線程共用這個進程的資源。 //-------- 2、成員變數和成員函數前加static的作用 它們被稱為常成員變數和常成員函數,又稱為類成員變數和類成員函數。分別用來反映類的狀態。比如類成員變數可以用來統計類執行個體的數量,類成員函數負責這種統計的動作。 //-------- 3、malloc和new的區別 new是C++的關鍵字。malloc在分配記憶體時必須按給出的位元組分配,new可以按照對象的大小自動分配,並且能調用建構函式。可以說new是對象的對象,而malloc不是。本質上new分配記憶體時,還會在實際記憶體塊的前後加上附加資訊,所以new所使用的記憶體大小比malloc多。 //-------- 4、堆和棧的區別 棧:由編譯器自動分配、釋放。在函數體中定義的變數通常在棧上。 堆:一般由程式員分配釋放。用new、malloc等分配記憶體函數分配得到的就是在堆上。 棧是機器系統提供的資料結構,而堆則是C/C++函數庫提供的。 棧是系統提供的功能,特點是快速高效,缺點是有限制,資料不靈活;而棧是函數庫提供的功能,特點是靈活方便,資料適應面廣泛,但是效率有一定降低。棧是系統資料結構,對於進程/線程是唯一的;堆是函數庫內部資料結構,不一定唯一。不同堆分配的記憶體無法互相操作。棧空間分靜態分配和動態分配兩種。靜態分配是編譯器完成的,比如自動變數(auto)的分配。動態分配由alloca函數完成。棧的動態分配無需釋放(是自動的),也就沒有釋放函數。為可移植的程式起見,棧的動態分配操作是不被鼓勵的!堆空間的分配總是動態,雖然程式結束時所有的資料空間都會被釋放回系統,但是精確的申請記憶體/釋放記憶體匹配是良好程式的基本要素。 //-------- 1.簡單介紹下ADO.NET和ADO主要有什麼改進?ADO以Recordset儲存,而ADO.NET則以DataSet表示,ADO.NET提供了資料集和資料配接器,有利於實現分散式處理,降低了對資料庫伺服器資源的消耗。//-------- 2.ASP.NET與ASP相比,主要有哪些進步?答:ASP.NET實現了物件導向編程,先行編譯的伺服器端代碼而不像ASP那樣解釋執行提高了效能,代碼分離易於管理,可訂製和擴充性,功能強大的開發工作,更好的安全機制等。//-------- 3.C#中的委託是什嗎?事件是不是一種委託?答:委託本質上是一種“方法介面”,它相當於C/C++中的函數指標,當然它比函數指標安全,在C#中通常用於事件處理。事件不是委託,不過由於事件的性質決定了處理它的程式邏輯能訪問的參數,因此,在C#中處理事件的邏輯都封裝為委託。//-------- 4.NEW有幾種方法?答:第一種:new Class(); 第二種:覆蓋方法public new XXXX(){}第三種:new 約束指定泛型類聲明中的任何型別參數都必須有公用的無參數建構函式。//-------- 5.如何把一個array複製到arrayList裡答:foreach( object arr in array )arrayList.Add(arr);//-------- 6.datagrid.datasouse可以串連什麼資料來源答:dataset,datatable,dataview , Ilist//-------- 7.用sealed修飾的類有什麼特點答:sealed 修飾符用於防止從所修飾的類派生出其它類。如果一個密封類被指定為其他類的基類,則會發生編譯時間錯誤。密封類不能同時為抽象類別。//-------- 8.列舉ADO.NET中的五個主要對象,並簡單描述答:Connection連線物件,Command執行命令和預存程序,DataReader向前唯讀資料流DataAdapter適配器,支援增刪該查,DataSet資料級對象,相當與記憶體裡的一張或多張表。//-------- 9.概述三層結構體系答:展示層(USL),商務邏輯層(BLL),資料訪問層(DAL)//-------- 10.什麼是裝箱和拆箱?什麼是重載?答:裝箱就是把實值型別轉成參考型別,拆箱相反把引用轉換成實值型別。重載就是指一個方法名同,參數個數不同,傳回值可以相同的方法。//-------- 11.實值型別和參考型別的區別?答:簡單類型和枚舉類型都是實值型別,類、介面以及數群組類型都是參考型別。//-------- 12.簡述WebService答:Web服務可以描述為可以在web上部署並可以被任何應用程式或其他服務調用的功能。所謂服務就是系統提供一組介面,並通過介面使用系統提供的功能,Web服務可以提供任何企業到客戶,企業對企業 (B2B),點對點或部門對部門通訊所需的服務,比如一個公司可以通過網路連接到另一個公司的服務,從而直接傳遞訂購單。//-------- 13.概述.NET中的GC機制。答:GC的全稱是garbage collection,中文名稱記憶體回收,是.NET中對記憶體管理的一種功能。記憶體回收行程跟蹤並回收託管記憶體中分配的對象,定期執行記憶體回收以回收分配給沒有有效引用的對象的記憶體。當使用可用記憶體不能滿足記憶體請求時,GC會自動進行。 在進行記憶體回收時,記憶體回收行程會首先搜尋記憶體中的託管對象,然後從Managed 程式碼中搜尋被引用的對象並標記為有效,接著釋放沒有被標記為有效對象並收回記憶體,最後整理記憶體將有效對象挪動到一起//-------- 14.ASP.NET中常見內建對象?答:Resqponse、Request、Server、Session、Acclication、Cookie//-------- 15.什麼是CLR?答:CLR(公用語言運行環境)和Java虛擬機器一樣也是一個運行時環境,它負責資源管理(記憶體配置和垃圾收集),並保證應用和底層作業系統之間必要的分離。//-------- //-------- 1. 填空:(1)物件導向的語言具有(繼承性)、(封裝性)、(多態性)。 (考基本概念) (2)能用foreach遍曆訪問的對象需要實現 IEnumerable介面或聲明GetEnumerable 方法的類型。(對foreach機制的理解) (3)列舉ADO.net中的五個主要對象Command、Connection、DataSet、DataSetCommand、DataReader。(對ADO.net的瞭解) //-------- 2. 不定項選擇: (1) 以下敘述正確的是:(BC) (考對介面的理解) A. 介面中可以有虛方法。 B. 一個類可以實現多個介面。 C. 介面不能被執行個體化。 D. 介面中可以包含已實現的方法。 (2) 從資料庫讀取記錄,你可能用到的方法有:(BCD) (考查對ADO.net的熟練程度) A. ExecuteNonQuery B. ExecuteScalar C. Fill D. ExecuteReader //-------- 3. 簡述 private、 protected、 public、 internal 修飾符的存取權限。 答: private : 私人成員, 在類的內部才可以訪問。 protected : 保護成員,該類內部和繼承類中可以訪問。 public : 公用成員,完全公開,沒有訪問限制。 internal: 在同一命名空間內可以訪問。 //-------- 4. 寫出一條Sql語句: 取出表A中第31到第40記錄(SQLServer, 以自動成長的ID作為主鍵, 注意:ID可能不是連續的。) 解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) //-------- 5.列舉ASP.NET 頁面之間傳遞值的幾種方式。 5解. 1.使用QueryString, 如....?id=1; response. Redirect().... 2.使用Session變數 3.使用Server.Transfer //-------- 6. 寫出程式的輸出結果 class Class1 { private string str = "Class1.str"; private int i = 0; static void StringConvert(string str) { str = "string being converted."; } static void StringConvert(Class1 c) { c.str = "string being converted."; } static void Add(int i) { i++; } static void AddWithRef(ref int i) { i++; } static void Main() { int i1 = 10; int i2 = 20; string str = "str"; Class1 c = new Class1(); Add(i1); AddWithRef(ref i2); Add(c.i); StringConvert(str); StringConvert(c); Console.WriteLine(i1); Console.WriteLine(i2); Console.WriteLine(c.i); Console.WriteLine(str); Console.WriteLine(c.str); } } 6解. (考查值引用和對象引用) 10 21 0 str string being converted. //-------- 7.寫出程式的輸出結果 public abstract class A { public A() { Console.WriteLine(‘A‘); } public virtual void Fun() { Console.WriteLine("A.Fun()"); } } public class B: A { public B() { Console.WriteLine(‘B‘); } public new void Fun() { Console.WriteLine("B.Fun()"); } public static void Main() { A a = new B(); a.Fun(); } } 7解. A B A.Fun() (考查在繼承類中建構函式, 以及new 方法, ) //-------- 8.寫出程式的輸出結果: public class A { public virtual void Fun1(int i) { Console.WriteLine(i); } public void Fun2(A a) { a.Fun1(1); Fun1(5); } } public class B : A { public override void Fun1(int i) { base.Fun1 (i + 1); } public static void Main() { B b = new B(); A a = new A(); a.Fun2(b); b.Fun2(a); } } 8解. 2 5 1 6 //-------- 9. 一列數的規則如下: 1、1、2、3、5、8、13、21、34...... 求第30位元是多少, 用遞迴演算法實現。(C#語言) 9解. public class MainClass { public static void Main() { Console.WriteLine(Foo(30)); } public static int Foo(int i) { if (i <= 0) return 0; else if(i > 0 && i <= 2) return 1; else return Foo(i -1) + Foo(i - 2); } } //-------- 10. 程式設計: 貓大叫一聲,所有的老鼠都開始逃跑,主人被驚醒。(C#語言) 要求: 1.要有聯動性,老鼠和主人的行為是被動的。 2.考慮可擴充性,貓的叫聲可能引起其他聯動效應。 10解、 要點:1. 聯動效果,運行代碼只要執行Cat.Cryed()方法。2. 對老鼠和主人進行抽象 評分標準: <1>.構造出Cat、Mouse、Master三個類,並能使程式運行(2分) <2>從Mouse和Master中提取抽象(5分) <3>聯動效應,只要執行Cat.Cryed()就可以使老鼠逃跑,主人驚醒。(3分) public interface Observer { void Response(); //觀察者的響應,如是老鼠見到貓的反映 } public interface Subject { void AimAt(Observer obs); //針對哪些觀察者,這裡指貓的要撲捉的對象---老鼠 } public class Mouse : Observer { private string name; public Mouse(string name, Subject subj) { this.name = name; subj.AimAt(this); } public void Response() { Console.WriteLine(name + " attempt to escape!"); } } public class Master : Observer { public Master(Subject subj) { subj.AimAt(this); } public void Response() { Console.WriteLine("Host waken!"); } } public class Cat : Subject { private ArrayList observers; public Cat() { this.observers = new ArrayList(); } public void AimAt(Observer obs) { this.observers.Add(obs); } public void Cry() { Console.WriteLine("Cat cryed!"); foreach (Observer obs in this.observers) { obs.Response(); } } } class MainClass { static void Main(string[] args) { Cat cat = new Cat(); Mouse mouse1 = new Mouse("mouse1", cat); Mouse mouse2 = new Mouse("mouse2", cat); Master master = new Master(cat); cat.Cry(); } } //-------- 設計方法二: 使用event -- delegate設計.. public delegate void SubEventHandler(); public abstract class Subject { public event SubEventHandler SubEvent; protected void FireAway() { if (this.SubEvent != null) this.SubEvent(); } } public class Cat : Subject { public void Cry() { Console.WriteLine("cat cryed."); this.FireAway(); } } public abstract class Observer { public Observer(Subject sub) { sub.SubEvent += new SubEventHandler(Response); } public abstract void Response(); } public class Mouse : Observer { private string name; public Mouse(string name, Subject sub) : base(sub) { this.name = name; } public override void Response() { Console.WriteLine(name + " attempt to escape!"); } } public class Master : Observer { public Master(Subject sub) : base(sub){} public override void Response() { Console.WriteLine("host waken"); } } class Class1 { static void Main(string[] args) { Cat cat = new Cat(); Mouse mouse1 = new Mouse("mouse1", cat); Mouse mouse2 = new Mouse("mouse2", cat); Master master = new Master(cat); cat.Cry(); } } //-------- **********問題://-------- 1.ASP.NET中的身分識別驗證有那些?你當前項目採用什麼方式驗證請解釋 2.什麼是WEB控制項?使用WEB控制項有那些優勢? 3.請解釋ASP。NET中以什麼方式進行資料驗證? 4.請談談對Regex的看法? 5.ASP。NET中共有幾種類型的控制項?各有什麼區別? 6.WEB控制項可以激法服務端事件,請談談服務端事件是怎麼發生並解釋其原理?自動傳回是什嗎?為什麼要使用自動傳回。 7.WEB控制項及HTML服務端控制項能否調用用戶端方法?如果能,請解釋如何調用? 8.ASP。NET與ASP相比有什麼優勢? 9.請解釋web.config檔案中的重要節點 10.請解釋ASP。NET中的web頁面與其隱藏類之間的關係? 11.什麼是viewstate,能否禁用?是否所用控制項都可以禁用? 13.當發現不能讀取頁面上的輸入的資料時很有可能是什麼原因造成的?怎麼解決 14.請解釋一個WEB頁面中代碼執行次序。 15.請解釋什麼是內容物件,在什麼情況下要使用內容物件 16.請解釋轉寄與跳轉的區別? 17.請解釋ASP.NET中不同頁面之間資料傳遞有那些方式? 18.請解釋ASP。NET中button linkbutton imagebutton 及hyperlink這四個控制項之間的功別 19.請解釋一下。NET多層應用程式中層與層之間以那幾種方式進行資料傳遞。並解釋你自己的項目中採用那種方式進行。 20.如果出現ASP。NET中的事件不能觸發可能由於什麼原因造成? 21.如果需要在datagride控制項中的某一列中添加下拉式清單方塊並綁定資料怎麼解決? 22.請解釋asp.net中的資料繫結與傳統資料繫結有什麼區別? 23.請解釋.net採用委託實現的事件模型與JAVA中採用介面實現的事件模型有什麼區別,以圖示方式解釋。 24.請解釋介面的顯式實現有什麼意義? Q:您在什麼情況下會用到虛方法?它與介面有什麼不同? Q:Override與重載有什麼區別? Q:實值型別與參考型別有什麼區別? Q:怎樣理解靜態變數? Q:向伺服器發送請求有幾種方式? Q:DataReader與Dataset有什麼區別? Q:如果在一個B/S結構的系統中需要傳遞變數值,但是又不能使用Session、Cookie、Application,您有幾種方法進行處理? Q:用.net做B/S結構的系統,您是用幾層結構來開發,每一層之間的關係以及為什麼要這樣分層? Q:軟體開發過程一般有幾個階段?每個階段的作用? Q:微軟推出了一系列的Application Block,請舉出您所知道的Application Block並說明其作用? Q:請列舉一些您用到過的設計模式以及在什麼情況下使用該模式? Q:您對WebService的體會? Q:您對編程的興趣如何?工作中遇到不懂的問題是怎樣去解決的?您一般怎樣去提高自己的編程水平? Q:您離職的原因是什嗎? 以下幾道題目如果您不會,請較為詳細的描述您的解決思路和方法 Q:通過超連結怎樣傳遞中文參數? Q:請編程遍曆頁面上所有TextBox控制項並給它賦值為string.Empty? Q:請編程實現一個冒泡排序演算法? 5、不調用C++/C的字串庫函數,請編寫函數 strcpy 1. C#中 property 與 attribute的區別,他們各有什麼用處,這種機制的好處在哪裡? 2. 講一講你理解的web service,在dot net framework中,怎麼很好的結合xml?(講概念就行了) 3. C#, Java 和 c++的特點,有什麼相同的地方,不同的地方,C#分別從c++和java中吸取了他們那些優點? 4. C#可否對記憶體進行直接的操作?(這可是個痛點哦?要注意!) 5. 用Visual C++ 6.0編寫的代碼(unmanaged code),如何在CLR下和其他dot net component結合? 6. 以前作過的一些項目?介紹一下自己的編程經驗。(這是矇混不過去的,基本一問就知道是真是假) 7. 你對公司有什麼期望?你的薪水期望值?為什麼學電腦?以前的工作經驗(這非常重要)? Q3: 維護資料庫的完整性、一致性、你喜歡用觸發器還是自寫商務邏輯?為什麼 Q4:ADO。NET相對於ADO等主要有什麼改進? Q5:ASP。NET與ASP相比,主要有哪些進步? Q6:C#中的委託是什嗎?事件是不是一種委託? Q7:描述一下C#中索引器的實現過程,是否只能根據數字進行索引? Q8:C#中要使一個類支援FOREACH遍曆,實現過程怎樣? Q10:寫一個HTML頁面,實現以下功能,左鍵點擊頁面時顯示“您好”,右鍵點擊時顯示“禁止右鍵”。並在2分鐘後自動關閉頁面。 Q11:你對XMLHTTP、WEBSERVICE 瞭解嗎?簡單描述其特點、作用 Q12:介面和抽象類別有什麼區別?你選擇使用介面和抽象類別的依據是什嗎? Q13:自訂控制項和一般使用者控制項的異同?如果要用這兩者之一,你會選擇哪種?為什麼 Q14:大概描述一下ASP。NET伺服器控制項的生命週期 Q15:UML Q16:物件導向的概念,主要特點 Q17:類劃分的依據。類粒度問題 Q18:事物管理問題 第一,談談final, finally, finalize的區別。 第二,Anonymous Inner Class (匿名內部類) 是否可以extends(繼承)其它類,是否可以implements(實現)interface(介面)? 第三,Static Nested Class 和 Inner Class的不同,說得越多越好(面試題有的很籠統)。 第四,&和&&的區別。 第五,HashMap和Hashtable的區別。 第六,Collection 和 Collections的區別。 第七,什麼時候用assert。 第八,GC是什麼? 為什麼要有GC? 第九,String s = new String("xyz");建立了幾個String Object? 第十,Math.round(11.5)等於多少? Math.round(-11.5)等於多少? 第十一,short s1 = 1; s1 = s1 + 1;有什麼錯? short s1 = 1; s1 += 1;有什麼錯? 第十二,sleep() 和 wait() 有什麼區別? 第十三,Java有沒有goto? 第十四,數組有沒有length()這個方法? String有沒有length()這個方法? 第十五,Overload和Override的區別。Overloaded的方法是否可以改變傳回值的類型? 第十六,Set裡的元素是不能重複的,那麼用什麼方法來區分重複與否呢? 是用==還是equals()? 它們有何區別? 第十七,給我一個你最常見到的runtime exception。 第十八,error和exception有什麼區別? 第十九,List, Set, Map是否繼承自Collection介面? 第二十,abstract class和interface有什麼區別? 第二十一,abstract的method是否可同時是static,是否可同時是native,是否可同時是synchronized? 第二十二,介面是否可繼承介面? 抽象類別是否可實現(implements)介面? 抽象類別是否可繼承實體類(concrete class)? 第二十三,啟動一個線程是用run()還是start()? 第二十四,構造器Constructor是否可被override? 第二十五,是否可以繼承String類? 第二十六,當一個線程進入一個對象的一個synchronized方法後,其它線程是否可進入此對象的其它方法? 第二十七,try {}裡有一個return語句,那麼緊跟在這個try後的finally {}裡的code會不會被執行,什麼時候被執行,在return前還是後? 第二十八,編程題: 用最有效率的方法算出2乘以8等於幾? 第二十九,兩個對象值相同(x.equals(y) == true),但卻可有不同的hash code,這句話對不對? 第三十,當一個對象被當作參數傳遞到一個方法後,此方法可改變這個對象的屬性,並可返回變化後的結果,那麼這裡到底是值傳遞還是引用傳遞? 第三十一,swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上? 第三十二,編程題: 寫一個Singleton出來。 一.填空題 1.c#中的三元運算子是__?:___? 2.當整數a賦值給一個object對象時,整數a將會被__裝箱(封裝)___? 3.類成員有_____種可訪問形式? this.;new Class().Method; 4.public static const int A=1;這段代碼有錯誤嗎?是什嗎? const不能用static修飾 5.float f=-123.567F; int i=(int)f; i的值現在是_____? 123 6.利用operator聲明且僅聲明了“==”,有什麼錯誤麼? 7.委託聲明的關鍵字是______? delagete 8.用sealed修飾的類有什麼特點?密封,不能繼承 9.在Asp.net中所有的自訂使用者控制項都必須繼承自________?Control 10.在.Net中所有可序列化的類都被標記為_____? 11.在.NetManaged 程式碼中我們不用擔心記憶體漏洞,這是因為有了______?gc 12.下面的代碼中有什麼錯誤嗎?_______ using System; class A { public virtual void F(){ Console.WriteLine("A.F"); } } abstract class B:A { public abstract override void F(); // new public abstract void F(); } 13.當類T只聲明了私人執行個體建構函式時,則在T的程式文本外部,___可以___(可以 or 不可以)從T派生出新的類,不可以____(可以 or 不可以)直接建立T的任何執行個體。 14.下面這段代碼有錯誤嗎? switch (i){ case(): CaseZero(); break; case 1: CaseOne(); break; case 2: dufault; //wrong CaseTwo(); break; } 15.在.Net中,類System.Web.UI.Page 可以被繼承嗎?可以 二.簡答題 1.在c#中using和new這兩個關鍵字有什麼意義,請寫出你所知道的意義?using 指令 和語句 new 建立執行個體 new 隱藏基類中方法 4.談談類和結構的區別?類是參考型別、結構是實值型別 5.一個長度為10000的字串,通過隨機從a-z中抽取10000個字元組成。請用c#語言編寫主要程式來實現。 6.對於這樣的一個枚舉類型: enum Color:byte{ Red, Green, Blue, Orange } string[] ss=Enum.GetNames(typeof(Color)); byte[] bb=Enum.GetValues(typeof(Color)); 試寫一段程式顯示出枚舉類型中定義的所有符號名稱以及它們對應的數值。 7.您瞭解設計模式嗎?請列出您所知道的設計模式的名稱。 // 8.請在SQL Server中設計表來儲存一個樹狀結構的組織圖(假設結構圖中只有名稱這一項內容需要儲存),如果我想查詢某一職位下的所有職位,用一個預存程序來實現,你有什麼思路? 9.什麼叫做SQL注入,如何防止?請舉例說明。 10.下面這段代碼輸出什嗎?為什嗎? int i=5; int j=5; if (Object.ReferenceEquals(i,j)) Console.WriteLine("Equal"); else Console.WriteLine("Not Equal"); 1.寫一個實現對一段字串翻轉的方法,附加一些條件,如其中包括“,”、“.”,對其設計測試用 例 。 2.對一支紙杯設計測試案例(可以是廣義的杯,不一定是某一支特定功能的杯) 開發語言概念題 3.什麼是反射? 4.用Singleton如何寫設計模式 5.C#中的記憶體回收機制是怎樣的? 6.什麼是Application Pool? 7.鏈表和數組的區別,各有什麼優缺點. 8.Remoting在用戶端伺服器怎麼實現 ? 9.什麼是友元函數? 10.用標準C如何?多態? 11.什麼是虛函數? 12.什麼是抽象函數? 13.什麼是記憶體流失,怎樣最簡單的方法判斷被存泄漏 ? 英語題 14.用英文介紹一下使用C#/C++做的項目,主要功能 15.如果要與美國開電話會議,會如何與美國的工程師溝通 16.如果老闆認為你的技術落後,你會怎麼回答 資料庫知識題 17.使用什麼工具來調用預存程序 18.SQL Server的兩種索引是何形式?索引的作用?索引的優缺點? 19.觸發器的作用 其它知識題及問題 20.什麼是Web Service? 21.什麼是XML? 22.Socket怎麼實現? *******************************************************************************************************本文檔由A5下載 http://down.admin5.com收集整理,著作權歸原作者所有。A5下載提供海量源碼,軟體,素材,教程文檔下載。如果您恰好喜歡打籃球,請登入www.siboding.com 購買正品低價的斯伯丁籃球
[整理]C#.Net的常見面試試題附答案(ZT)