★33°空間‰


                                 ----★七彩服飾  【最潮拜☆日單精品】【Esprit】【Hotwind】滿150包郵-女裝-流行女裝    www.7color.hb.cn

                                 ----智力比知識(shí)重要,素質(zhì)比智力重要,覺(jué)悟比素質(zhì)更重要
          posts - 110,comments - 35,trackbacks - 0
          1.有哪幾種方法可以實(shí)現(xiàn)一個(gè)類存取另外一個(gè)類的成員函數(shù)及屬性,并請(qǐng)舉列來(lái)加以說(shuō)明和分析.
          2.A類是B類的基類,并且都有自己的構(gòu)造,析構(gòu)函數(shù),請(qǐng)舉例證明B類從實(shí)例化到消亡過(guò)程中構(gòu)造,析構(gòu)函數(shù)的執(zhí)行過(guò)程.請(qǐng)附code
          3.什么叫應(yīng)用程序域?什么是受管制的代碼?什么是強(qiáng)類型系統(tǒng)?
          4..Net中讀寫數(shù)據(jù)庫(kù)需要用到哪些類?他們的作用
          5.ASP.net的身份驗(yàn)證方式有哪些?分別是什么原理?
          6.解釋一下UDDI、WSDL的意義及其作用。
          7.常用的調(diào)用webservice方法有哪些?
          8.講一講你理解的web service,在dot net framework中,怎么很好的結(jié)合xml?(講概念就行了)
          9.C#可否對(duì)內(nèi)存進(jìn)行直接的操作?(這可是個(gè)難點(diǎn)哦?要注意!),如果能,如何操作;如果不能,為什么?
          10.描述一下C#中索引器的實(shí)現(xiàn)過(guò)程,是否只能根據(jù)數(shù)字進(jìn)行索引?

          1.面向?qū)ο蟮乃枷胫饕ㄊ裁矗?br>面向?qū)ο笕筇卣?繼承,封套,多態(tài).面相對(duì)象的思想也不是一句兩句就能說(shuō)清楚..主要思想就是減少代碼重復(fù),增大代碼復(fù)用率..

          2.什么是ASP.net中的用戶控件
          問(wèn)這樣的問(wèn)題,一般是迷惑你.因?yàn)樾率诌€是分不清楚用戶控件和服務(wù)器控件(也稱自定義控件)..用戶控件一般用在內(nèi)容多為靜態(tài),或者少許會(huì)改變的情況下..用的比較大..類似ASP中的include..但是功能要強(qiáng)大的多..

          如果現(xiàn)有的 ASP.NET 服務(wù)器控件都不符合應(yīng)用程序的特定要求,則可以創(chuàng)建封裝所需功能的 Web 用戶控件或 Web 自定義控件。這兩種控件之間的主要區(qū)別在于設(shè)計(jì)時(shí)的易創(chuàng)建性與易用性。

          Web 用戶控件易于創(chuàng)建,但它們?cè)诟呒?jí)方案中使用起來(lái)可能不太方便。開(kāi)發(fā) Web 用戶控件的方式與開(kāi)發(fā) Web 窗體頁(yè)的方式幾乎完全相同。與 Web 窗體相似,用戶控件可以在可視化設(shè)計(jì)器中創(chuàng)建,可以使用與 HTML 隔離的代碼來(lái)編寫,并且可以處理執(zhí)行事件。但是,由于 Web 用戶控件在運(yùn)行時(shí)動(dòng)態(tài)地進(jìn)行編譯,所以不能將它們添加到工具箱中,而且它們?cè)谔砑拥巾?yè)面上時(shí)由簡(jiǎn)單的占位符標(biāo)志符號(hào)來(lái)表示。如果您習(xí)慣于完全的 Visual Studio .NET 設(shè)計(jì)時(shí)支持(包括“屬性”窗口和“設(shè)計(jì)”視圖預(yù)覽),這將會(huì)使 Web 用戶控件使用起來(lái)更不方便。 此外,在應(yīng)用程序之間共享用戶控件的唯一方式是將一個(gè)單獨(dú)的副本放入每個(gè)應(yīng)用程序,因此如果對(duì)該控件作出了更改,將需要進(jìn)行比較多的維護(hù)。

          Web 自定義控件是編譯的代碼,這使得 Web 自定義控件更易于使用但更難于創(chuàng)建;Web 自定義控件必須使用代碼來(lái)創(chuàng)建。一旦創(chuàng)建該控件,那么,您就可以將其添加到工具箱中,并在具有完全“屬性”窗口支持和 ASP.NET 服務(wù)器控件的其他所有設(shè)計(jì)時(shí)功能的可視化設(shè)計(jì)器中顯示該控件。此外,還可以在全局程序集緩存中安裝 Web 自定義控件的單個(gè)副本,并在應(yīng)用程序之間共享該副本,這將使維護(hù)變得更容易。有關(guān)更多信息,請(qǐng)參閱全局程序集緩存。
          如果您的控件包含大量靜態(tài)布局,用戶控件則可能是較佳的選擇。如果您的控件主要是動(dòng)態(tài)生成的(例如數(shù)據(jù)綁定表的行、樹(shù)視圖的節(jié)點(diǎn)或選項(xiàng)卡 (TabControl) 控件的選項(xiàng)卡),自定義控件則可能是較佳的選擇。

          下表概述了這兩種類型之間的主要區(qū)別:
          Web 用戶控件
          1.難于創(chuàng)建
          2.為使用可視化設(shè)計(jì)工具的使用者提供有限的支持
          3. 每個(gè)應(yīng)用程序中需要控件的一個(gè)單獨(dú)副本
          4. 不能添加到 Visual Studio 中的工具箱
          5. 適用于靜態(tài)布局
          Web 自定義控件
          1.易于創(chuàng)建
          2. 為使用者提供完全的可視化設(shè)計(jì)工具支持
          3. 僅在全局程序集緩存中需要控件的單個(gè)副本
          4. 可以添加到 Visual Studio 中的工具箱
          5. 適用于動(dòng)態(tài)布局


          3.什么叫應(yīng)用程序域?什么是受管制的代碼?什么是強(qiáng)類型系統(tǒng)?什么是裝箱和拆箱?什么是重載?CTS、CLS和CLR分別作何解釋?
          這個(gè)需要當(dāng)前描述了..東西太多..打字要打死了..找個(gè)比較簡(jiǎn)單的說(shuō)說(shuō)吧!
          CTS:公共類型系統(tǒng).主要是為了語(yǔ)言之間的進(jìn)行標(biāo)準(zhǔn)化處理.
          CLS:公共語(yǔ)言規(guī)范.主要是確保代碼可以在任何語(yǔ)言中訪問(wèn)的最小標(biāo)準(zhǔn)集體
          CLR:公共語(yǔ)言運(yùn)行時(shí).主要是管理代碼..處理,加載代碼,以及所有服務(wù)的代碼

          4.列舉一下你所了解的XML技術(shù)及其應(yīng)用
          xml用于配置,用于保存靜態(tài)數(shù)據(jù)類型.接觸XML最多的是web Services..和config

          5.值類型和引用類型的區(qū)別?寫出C#的樣例代碼。
          值類型是在內(nèi)存中保存,引用類型是在內(nèi)存中保存一副本.你在內(nèi)存中可以有多個(gè)某種引用對(duì)象..但是值類型始終只有一個(gè).
          最常見(jiàn)的值類型就是static,struct;
          例如:
          static int aa = 1;//值類型
          如果多個(gè)用戶改變aa的值則,aa的值會(huì)以最后一個(gè)修改的記錄為準(zhǔn).其他人的修改則會(huì)被沖掉.
          引用類型,最能說(shuō)明問(wèn)題的就是實(shí)例化..你new出來(lái)的對(duì)象單獨(dú)分配一個(gè)獨(dú)立的內(nèi)存..所以值不會(huì)互相沖突/

          數(shù)據(jù)成員可以分靜態(tài)變量、非靜態(tài)變量?jī)煞N.
           靜態(tài)成員:靜態(tài)類中的成員加入static修飾符,即是靜態(tài)成員.可以直接使用類名+靜態(tài)成員名訪問(wèn)此靜態(tài)成員,因?yàn)殪o態(tài)成員存在于內(nèi)存,非靜態(tài)成員需要實(shí)例化才會(huì)分配內(nèi)存,所以靜態(tài)成員不能訪問(wèn)非靜態(tài)的成員..因?yàn)殪o態(tài)成員存在于內(nèi)存,所以非靜態(tài)成員可以直接訪問(wèn)類中靜態(tài)的成員.
           
           非成靜態(tài)員:所有沒(méi)有加Static的成員都是非靜態(tài)成員,當(dāng)類被實(shí)例化之后,可以通過(guò)實(shí)例化的類名進(jìn)行訪問(wèn)..非靜態(tài)成員的生存期決定于該類的生存期..而靜態(tài)成員則不存在生存期的概念,因?yàn)殪o態(tài)成員始終駐留在內(nèi)容中..
           
           一個(gè)類中也可以包含靜態(tài)成員和非靜態(tài)成員,類中也包括靜態(tài)構(gòu)造函數(shù)和非靜態(tài)構(gòu)造函數(shù)..
           
           對(duì)于winApp來(lái)說(shuō),靜態(tài)成員對(duì)于程序員本身省了很多事,而且因?yàn)殪o態(tài)成員駐留內(nèi)存,在方法與方法之間傳遞共享數(shù)據(jù)的時(shí)候,所以靜態(tài)成員成了我的首選..但是不要因?yàn)榉奖?大量使用,尤其是在內(nèi)存緊張或者
           用靜態(tài)方法操作一些共享值的時(shí)候.或者要寫多用戶系統(tǒng)的時(shí)候,要慎之又慎.比如:
           static int id = 0;
           sql = "select * from table where id=" + id;l

          6.ADO.net中常用的對(duì)象有哪些?分別描述一下。
          Connection 數(shù)據(jù)庫(kù)連接對(duì)象
          Command 數(shù)據(jù)庫(kù)命令
          DataReader 數(shù)據(jù)讀取器
          DataSet 數(shù)據(jù)集

          7.如何理解委托?
          委托的概念,最好的說(shuō)明就是事件.因?yàn)槭录褂玫木褪俏?例如:this.Load += new System.EventHandler(this.Page_Load);這個(gè)就是使用了一個(gè)委托.
          具體的用法請(qǐng)參考.我以前的帖子,設(shè)計(jì)貓鼠聯(lián)動(dòng)..

          8.C#中的接口和類有什么異同。
          類是方法功能的實(shí)現(xiàn)和集合,接口是規(guī)范類.約束類.
          參考我的文章:http://lixianhuei.cnblogs.com/archive/2005/08/04/207123.html

          9.。net中讀寫數(shù)據(jù)庫(kù)需要用到哪些類?他們的作用
          看第六題..答案差不多

          10.UDP連接和TCP連接的異同。
          這個(gè)說(shuō)不清楚.

          11.ASP.net的身份驗(yàn)證方式有哪些?分別是什么原理?
          window驗(yàn)證:為每個(gè)用戶開(kāi)啟window帳號(hào),驗(yàn)證其身份.安全性較高.
          forms驗(yàn)證:為每個(gè)登陸用戶寫入一個(gè)身份驗(yàn)證票據(jù)..在web使用最廣的驗(yàn)證方式..靈活方便.

          12.進(jìn)程和線程分別怎么理解?
          這個(gè)是新人最容易迷惑的東西..
          進(jìn)程:Process

          13.什么是code-Behind技術(shù)。
          新建一個(gè)VS.NET下的項(xiàng)目..看到ASPX,RESX和CS三個(gè)后綴的文件了嗎??這個(gè)就是代碼分離.實(shí)現(xiàn)了HTML代碼和服務(wù)器代碼分離.方便代碼編寫和整理.

          14.活動(dòng)目錄的作用。
          活動(dòng)目錄是window2000的最重要的功能.可以將用戶信息全部集成起來(lái),登陸以后可以訪問(wèn)多個(gè)不同的網(wǎng)絡(luò)服務(wù)..沒(méi)深入研究過(guò).
          查看一下帖子:http://www.ies.impu.edu.cn/resource/os/windowsx/WindowsGeneral/WinGeneral0008.htm

          15..net中讀寫XML的類都?xì)w屬于哪些命名空間?
          System.XML類

          16.解釋一下UDDI、WSDL的意義及其作用。
          解釋不清楚了..又是一大塊..

          17.什么是SOAP,有哪些應(yīng)用。
          simple object access protocal,簡(jiǎn)單對(duì)象接受協(xié)議.以xml為基本編碼結(jié)構(gòu),建立在已有通信協(xié)議上(如http,不過(guò)據(jù)說(shuō)ms在搞最底層的架構(gòu)在tcp/ip上的soap)的一種規(guī)范
          是微軟大力推廣的Web Service使用的協(xié)議..

          18.如何部署一個(gè)ASP.net頁(yè)面。
          不清楚問(wèn)的什么意思...如果非要回答的話,就寫一個(gè)帶.aspx的后綴文件..然后安裝IIS和FrameWork環(huán)境..瀏覽就好了.

          19.如何理解.net中的垃圾回收機(jī)制。
          垃圾回收體制如下:
          如果發(fā)現(xiàn)內(nèi)存不夠,則垃圾回收器,將全部對(duì)象作為無(wú)效對(duì)象(被回收對(duì)象),然后先將全局變量,static,處于活動(dòng)中的局部變量,以及當(dāng)前CG指針指向的對(duì)象放入一個(gè)表中.然后
          會(huì)搜索新列表中的對(duì)象所引用的對(duì)象.加入列表中,其他沒(méi)有被加入列表的對(duì)象都會(huì)被回收.

          20.常用的調(diào)用webservice方法有哪些?
          我一般用的是WSDL..或者web引用..
           
           
           

          1.new有幾種用法

          第一種:new Class();

          第二種:覆蓋方法

          public new XXXX(){}

          第三種:new 約束指定泛型類聲明中的任何類型參數(shù)都必須有公共的無(wú)參數(shù)構(gòu)造函數(shù)。

          2.如何把一個(gè)array復(fù)制到arrayList里

          foreach( object o in array )arrayList.Add(o);

          3.datagrid.datasouse可以連接什么數(shù)據(jù)源 [dataset,datatable,dataview]

          dataset,datatable,dataview , IList

          4.概述反射和序列化

          反射:程序集包含模塊,而模塊包含類型,類型又包含成員。反射則提供了封裝程序集、模塊和類型的對(duì)象。您可以使用反射動(dòng)態(tài)地創(chuàng)建類型的實(shí)例,將類型綁定到現(xiàn)有對(duì)象,或從現(xiàn)有對(duì)象中獲取類型。然后,可以調(diào)用類型的方法或訪問(wèn)其字段和屬性

          序列化:序列化是將對(duì)象轉(zhuǎn)換為容易傳輸?shù)母袷降倪^(guò)程。例如,可以序列化一個(gè)對(duì)象,然后使用 HTTP 通過(guò) Internet 在客戶端和服務(wù)器之間傳輸該對(duì)象。在另一端,反序列化將從該流重新構(gòu)造對(duì)象。

          5.概述o/r mapping 的原理

          利用反射,配置 將類于數(shù)據(jù)庫(kù)表映射

          6.類成員有( )種可訪問(wèn)形式

          可訪問(wèn)形式?不懂。

          可訪問(wèn)性:public ,protected ,private,internal

          7.用sealed修飾的類有什么特點(diǎn)

          sealed 修飾符用于防止從所修飾的類派生出其它類。如果一個(gè)密封類被指定為其他類的基類,則會(huì)發(fā)生編譯時(shí)錯(cuò)誤。

          密封類不能同時(shí)為抽象類。

          sealed 修飾符主要用于防止非有意的派生,但是它還能促使某些運(yùn)行時(shí)優(yōu)化。具體說(shuō)來(lái),由于密封類永遠(yuǎn)不會(huì)有任何派生類,所以對(duì)密封類的實(shí)例的虛擬函數(shù)成員的調(diào)用可以轉(zhuǎn)換為非虛擬調(diào)用來(lái)處理。

          8.列舉ADO.NET中的五個(gè)主要對(duì)象,并簡(jiǎn)單描述

          connection,command,dataReader,trans,dataset ...

          9.執(zhí)行下面代碼后:

          String strTemp ="abcdefg 某某某";

          Int i System.Text.Encoding.Default.GetBytes(strTemp).Length;

          Int j = strTemp.Length;

          問(wèn):i=(14 ) ;j=(11 )

          i=(14 ) ;j=(11 ) 中文兩個(gè)字節(jié)

          10.C#中,string str = null 與 string str ="",請(qǐng)盡量用文字說(shuō)明區(qū)別。(要點(diǎn):說(shuō)明詳細(xì)的內(nèi)存空間分配)

          string str ="" 分配空間

          11.詳述.NET里class和struct的異同!

          class:放在 ? struct放在?

          struct值傳遞

          類與結(jié)構(gòu)有很多相似之處:結(jié)構(gòu)可以實(shí)現(xiàn)接口,并且可以具有與類相同的成員類型。然而,結(jié)構(gòu)在幾個(gè)重要方面不同于類:結(jié)構(gòu)為值類型而不是引用類型,并且結(jié)構(gòu)不支持繼承。結(jié)構(gòu)的值存儲(chǔ)在“在堆棧上”或“內(nèi)聯(lián)”。細(xì)心的程序員有時(shí)可以通過(guò)聰明地使用結(jié)構(gòu)來(lái)增強(qiáng)性能。

          12.概述.NET里對(duì) remoting 和 webservice 兩項(xiàng)技術(shù)的理解和實(shí)際中的應(yīng)用。

          遠(yuǎn)程邏輯調(diào)用,remoing接口只能用在.net中

          13.什么是code-behind技術(shù)

          aspx and cs

          14.概述三層結(jié)構(gòu)體系

          web/business/dataaccess

          15.asp.net如何實(shí)現(xiàn)MVC模式,舉例說(shuō)明!

          web/business/dataaccess

          ----------------------------------------------------------------------------------------------------------

          1.面向?qū)ο蟮乃枷胫饕ㄊ裁矗?/p>

          答:這個(gè)題范圍太廣,不知道說(shuō)什么.

          2.什么是ASP.net中的用戶控件

          答:用戶控件就是.ascx擴(kuò)展名的東西嘍,可以拖到不同的頁(yè)面中調(diào)用,以節(jié)省代碼.比如登陸可能在多個(gè)頁(yè)面上有,就可以做成用戶控件,但是有一個(gè)問(wèn)題就是用戶控件拖到不同級(jí)別的目錄下后里面的圖片等的相對(duì)路徑會(huì)變得不準(zhǔn)確,需要自已寫方法調(diào)整.

          3.什么叫應(yīng)用程序域?什么是受管制的代碼?什么是強(qiáng)類型系統(tǒng)?什么是裝箱和拆箱?什么是重載?CTS、CLS和CLR分別作何解釋?

          答:裝箱就是把值類型轉(zhuǎn)成引用類型,從MS IL角度看好像是boxing,沒(méi)記錯(cuò)的話是把值從堆棧轉(zhuǎn)到堆中.拆箱相反,重載就是指一個(gè)方法名同,參數(shù)個(gè)數(shù)不同,返回值可以相同的方法.CLR是通用語(yǔ)言運(yùn)行時(shí),其它的不清楚.

          4.列舉一下你所了解的XML技術(shù)及其應(yīng)用

          答:XML可是好東西,保存配置,站與站之間的交流,WEB SERVICE都要用它.

          5.值類型和引用類型的區(qū)別?寫出C#的樣例代碼。答:結(jié)構(gòu)是值類型,類是引用類型,所以傳結(jié)構(gòu)就是值類型的應(yīng)用啦,傳對(duì)象或類就是引用類型的,這個(gè)不用多寫了吧.

           

          6.ADO.net中常用的對(duì)象有哪些?分別描述一下。

          答:connection command sqladapter dataset datatable dataview等等.寫不完了.

          7.如何理解委托?

          答:據(jù)說(shuō)相當(dāng)于函數(shù)指針,定義了委托就可以在不調(diào)用原方法名稱的情況下調(diào)用那個(gè)方法.

          msdn2005中是這樣解釋的:

          委托具有以下特點(diǎn):

          委托類似于 C++ 函數(shù)指針,但它是類型安全的。

          委托允許將方法作為參數(shù)進(jìn)行傳遞。

          委托可用于定義回調(diào)方法。

          委托可以鏈接在一起;例如,可以對(duì)一個(gè)事件調(diào)用多個(gè)方法。

          方法不需要與委托簽名精確匹配。有關(guān)更多信息,請(qǐng)參見(jiàn)協(xié)變和逆變。

          C# 2.0 版引入了匿名方法的概念,此類方法允許將代碼塊作為參數(shù)傳遞,以代替單獨(dú)定義的方法。

          8.C#中的接口和類有什么異同。

          答:這個(gè)異同可多了,要說(shuō)清楚還真不容易.

          9.。net中讀寫數(shù)據(jù)庫(kù)需要用到哪些類?他們的作用

          答:這個(gè)類自已可以寫的啊,你是指基類嗎?那configuration,sqlconnection,sqlcommand等都要用到.

          10.UDP連接和TCP連接的異同。

          答:前者只管傳,不管數(shù)據(jù)到不到,無(wú)須建立連接.后者保證傳輸?shù)臄?shù)據(jù)準(zhǔn)確,須要連結(jié).

          11.ASP.net的身份驗(yàn)證方式有哪些?分別是什么原理?答:form認(rèn)證,windows集成認(rèn)證等,原理不清楚.

           

          12.進(jìn)程和線程分別怎么理解?

          答:進(jìn)程是老子,線程是兒子,沒(méi)有老子就沒(méi)有兒子,一個(gè)老子可以有多個(gè)兒子.一個(gè)兒子可以成為別人的兒子,一個(gè)老子也可以為別的老子生兒子.

          13.什么是code-Behind技術(shù)。

          答:代碼分離,這是個(gè)明智的東西,像ASP這樣混成一堆很不爽.或者可以理解成HTML代碼寫在前臺(tái),C#代碼寫在后臺(tái).當(dāng)


           

           

          ASP.NET面試的題目
          1。請(qǐng)簡(jiǎn)要寫出你對(duì)C#及ASP的認(rèn)識(shí)。


          2。怎么獲得文件的當(dāng)前路徑(代碼)

          3。 請(qǐng)使用ADO。NET 寫出數(shù)據(jù)庫(kù)連接開(kāi)始事務(wù)處理,即數(shù)據(jù)庫(kù)連接(代碼)
           
                 http://www.microsoft.com/china/MSDN/library/data/dataAccess/BestPractiCEs+forUsingADO.NET.mspx?mfr=true
          http://www.microsoft.com/china/MSDN/library/enterprisedevelopment/builddistapp/PerformanCE+COMparison+Transaction+Control.mspx?mfr=true

          4。在SQL語(yǔ)言中,如果要建立一個(gè)工資表包含職工號(hào),姓名,職稱。工資等字段。若要保證工資 字段 的取值不低于800元,最合適的實(shí)現(xiàn)方法是:
          A。在創(chuàng)建工資表時(shí)為”工資“字段建立缺省
          B。在創(chuàng)建工資表時(shí)為”工資“字段建立檢查約束
          C。在工資表建立一個(gè)觸發(fā)器
          D。為工資表數(shù)據(jù)輸入編寫一個(gè)程序進(jìn)行控制

          5。沒(méi)有關(guān)鍵碼序列(Q。G。M。Z。A。N。B。P。X。H。Y。S。L。T。K。E)
          采用二路歸并排序法進(jìn)行排序,請(qǐng)寫出第二趟歸并后的結(jié)果?

          6。創(chuàng)建一個(gè)新文本文件并向其寫入一個(gè)字符串(代碼)

          7。請(qǐng)使用正則表達(dá)式驗(yàn)證電子郵件地址的合法性(代碼)

          8。如何設(shè)定DATAGRID中模板列里 下拉列表默然值,如何在編輯時(shí),讓其綁定另一個(gè)表的數(shù)據(jù)并自動(dòng)講當(dāng)前值設(shè)為默認(rèn)值

          9。上機(jī)測(cè)試題目:用戶管理中,用戶驗(yàn)證,用戶添加,用戶刪除功能,采用ACCESS數(shù)據(jù)庫(kù)
          (時(shí)間30分鐘)


          一、求2003年所有沒(méi)有降雨的日期  
          結(jié)果集:日期
          表名:t_rain     降雨記錄
          表結(jié)構(gòu):
          fstartTimedatetime  (有時(shí)間信息)  降雨開(kāi)始時(shí)間
          fendTimedatetime 降雨結(jié)束時(shí)間  (可能跨日的)

          二、問(wèn)答題
          1.三只貓三分鐘內(nèi)可以捉三只老鼠,一百只貓需要多久才能捉到一百只老鼠?
          2.有兩枚硬幣,共值一元五角,其中一枚不是五角的硬幣,請(qǐng)問(wèn)兩枚硬幣的面值各是多少?
          3.一個(gè)人購(gòu)物共付了六元,零食比筆芯多五元,筆芯價(jià)格是多少?
          4.有兩人在路上走,年輕的是年長(zhǎng)的兒子,但年長(zhǎng)的不是年輕的父親,年長(zhǎng)的是誰(shuí)?
          5.一立方尺的洞里有多少垃圾?
          6.一個(gè)男人和他遺孀的妹妹結(jié)婚是否合法?
          7.一只猴子跌進(jìn)三十尺深的井里,它每天朝上躥三尺,但都滑下兩尺,依照這個(gè)速度,猴子多少天后會(huì)躥出井外?
          8.抽屜里有黑白襪子各十只,如果你在黑暗中伸手入抽屜,最少要取出幾只才一定會(huì)有一雙顏色相同?
          9.有三個(gè)蘋果,你拿了兩個(gè),你共有多少個(gè)?
          10.有人要趕火車,只有兩分鐘時(shí)間,但要走兩里。如果第一里的速度是每小時(shí)三十里,第二里的速度應(yīng)該是多少才能趕上這班火車?

          三、分析:(除了答案,還需闡明思路):
          1、5個(gè)海盜搶到了100顆寶石,每一顆都一樣的大小和價(jià)值連城。
            他們決定這么分:
            1。抽簽決定自己的號(hào)碼(1,2,3,4,5)
            2。首先,由1號(hào)提出分配方案,然后大家5人進(jìn)行表決,當(dāng)且僅當(dāng)半數(shù)和超過(guò)半數(shù)的人同意時(shí),按照他的提案進(jìn)行分配,否則將被扔入大海喂鯊魚。
            3。如果1號(hào)死后,再由2號(hào)提出分配方案,然后大家4人進(jìn)行表決,當(dāng)且僅當(dāng)半數(shù)和超過(guò)半數(shù)的人同意時(shí),按照他的提案進(jìn)行分配,否則將被扔入大海喂鯊魚。
            4。依次類推......
          問(wèn)題:第一個(gè)海盜提出怎樣的分配方案才能夠使自己的收益最大化
          條件:每個(gè)海盜都是很聰明的人,都能很理智的判斷得失,從而做出選擇。

          5.有一張表,表名:Test
          表結(jié)構(gòu):
               id int
               name varchar(20)
          有以下數(shù)據(jù):
              [id]    [name]
                1       aaa
                2       bbb
                3       aaa
                4       ccc
          要求寫一個(gè)查詢語(yǔ)句,只顯示[name]有重復(fù)的數(shù)據(jù),沒(méi)有重復(fù)的不顯示出來(lái)。

           


          傳入某個(gè)屬性的set方法的隱含參數(shù)的名稱是什么?
          value,它的類型和屬性所聲名的類型相同。
          如何在C#中實(shí)現(xiàn)繼承?
          在類名后加上一個(gè)冒號(hào),再加上基類的名稱。
          C#支持多重繼承么?
          不支持。可以用接口來(lái)實(shí)現(xiàn)。
          被protected修飾的屬性/方法在何處可以訪問(wèn)?
          在繼承或間接繼承與這個(gè)類的子類中可以訪問(wèn)。
          私有成員會(huì)被繼承么?
          會(huì),但是不能被訪問(wèn)。所以看上去他們似乎是不能被繼承的,但實(shí)際上確實(shí)被繼承了。
          請(qǐng)描述一下修飾符protected internal。
          被protected internal修飾的屬性/方法只能在它的在同一個(gè)程序集(Assembly)中的子類被訪問(wèn)。
          C#提供一個(gè)默認(rèn)的無(wú)參數(shù)構(gòu)造函數(shù),當(dāng)我實(shí)現(xiàn)了另外一個(gè)有一個(gè)參數(shù)的構(gòu)造函數(shù)時(shí)候,還想保留這個(gè)無(wú)參數(shù)的構(gòu)造函數(shù)。這樣我應(yīng)該寫幾個(gè)構(gòu)造函數(shù)?
          兩個(gè),一旦你實(shí)現(xiàn)了一個(gè)構(gòu)造函數(shù),C#就不會(huì)再提供默認(rèn)的構(gòu)造函數(shù)了,所以需要手動(dòng)實(shí)現(xiàn)那個(gè)無(wú)參數(shù)構(gòu)造函數(shù)。
          C#中所有對(duì)象共同的基類是什么?
          System.Object.
          重載和覆寫有什么區(qū)別?
          重載提供了對(duì)一個(gè)方法簽名的不同參數(shù)調(diào)用的實(shí)現(xiàn)。覆寫提供了子類中改變父類方法行為的實(shí)現(xiàn)。
          在方法定義中,virtual有什么含意?
          被virtual修飾的方法可以被子類覆寫。
          能夠?qū)⒎庆o態(tài)的方法覆寫成靜態(tài)方法么?
          不能,覆寫方法的簽名必須與被覆寫方法的簽名保持一致,除了將virtual改為override。
          可以覆寫私有的虛方法么?
          不可以,甚至子類中無(wú)法訪問(wèn)父類中的私有方法。
          能夠阻止某一個(gè)類被其他類繼承么?
          可以,使用關(guān)鍵字sealed。
          能夠?qū)崿F(xiàn)允許某個(gè)類被繼承,但不允許其中的某個(gè)方法被覆寫么?
          可以,標(biāo)記這個(gè)類為public,并標(biāo)記這個(gè)方法為sealed。
          什么是抽象類(abstract class)?
          一種不可以被實(shí)例化的類。抽象類中一般含有抽象方法,當(dāng)然也可有具體實(shí)現(xiàn)。繼承類只有實(shí)現(xiàn)過(guò)所有抽象類的抽象方法后才能被實(shí)例化。
          何時(shí)必須聲明一個(gè)類為抽象類?
          當(dāng)這個(gè)類中包含抽象方法時(shí),或是該類并沒(méi)有完全實(shí)現(xiàn)父類的抽象方法時(shí)。
          接口(interface)是什么?
          只含有共有抽象方法(public abstract method)的類。這些方法必須在子類中被實(shí)現(xiàn)。
          為什么不能指定接口中方法的修飾符?
          接口中的方法用來(lái)定義對(duì)象之間通信的契約,指定接口中的方法為私有或保護(hù)沒(méi)有意義。他們默認(rèn)為公有方法。
          可以繼承多個(gè)接口么?
          當(dāng)然。
          那么如果這些接口中有重復(fù)的方法名稱呢?
          這種情況中你可以決定如何實(shí)現(xiàn)。當(dāng)然需要特別得小心。但是在編譯環(huán)節(jié)是沒(méi)有問(wèn)題的。
          接口和抽象類的區(qū)別是什么?
          接口中所有方法必須是抽象的,并且不能指定方法的訪問(wèn)修飾符。抽象類中可以有方法的實(shí)現(xiàn),也可以指定方法的訪問(wèn)修飾符。
          如何區(qū)別重載方法?
          不同的參數(shù)類型,不同的參數(shù)個(gè)數(shù),不同的參數(shù)順序。
          const和readonly有什么區(qū)別?
          const關(guān)鍵字用來(lái)聲明編譯時(shí)常量,readonly用來(lái)聲明運(yùn)行時(shí)常量。
          System.String 和System.StringBuilder有什么區(qū)別?
          System.String是不可變的字符串。System.StringBuilder存放了一個(gè)可變的字符串,并提供一些對(duì)這個(gè)字符串修改的方法

           

           

          1.new有幾種用法

          第一種:new Class();

          第二種:覆蓋方法

          public new XXXX(){}

          第三種:new 約束指定泛型類聲明中的任何類型參數(shù)都必須有公共的無(wú)參數(shù)構(gòu)造函數(shù)。

          2.如何把一個(gè)array復(fù)制到arrayList里

          foreach( object o in array )arrayList.Add(o);

          3.datagrid.datasouse可以連接什么數(shù)據(jù)源 [dataset,datatable,dataview]

          dataset,datatable,dataview , IList

          4.概述反射和序列化

          反射:程序集包含模塊,而模塊包含類型,類型又包含成員。反射則提供了封裝程序集、模塊和類型的對(duì)象。您可以使用反射動(dòng)態(tài)地創(chuàng)建類型的實(shí)例,將類型綁定到現(xiàn)有對(duì)象,或從現(xiàn)有對(duì)象中獲取類型。然后,可以調(diào)用類型的方法或訪問(wèn)其字段和屬性

          序列化:序列化是將對(duì)象轉(zhuǎn)換為容易傳輸?shù)母袷降倪^(guò)程。例如,可以序列化一個(gè)對(duì)象,然后使用 HTTP 通過(guò) Internet 在客戶端和服務(wù)器之間傳輸該對(duì)象。在另一端,反序列化將從該流重新構(gòu)造對(duì)象。

          5.概述o/r mapping 的原理

          利用反射,配置 將類于數(shù)據(jù)庫(kù)表映射

          6.類成員有( )種可訪問(wèn)形式

          可訪問(wèn)形式?不懂。

          可訪問(wèn)性:public ,protected ,private,internal

          7.用sealed修飾的類有什么特點(diǎn)

          sealed 修飾符用于防止從所修飾的類派生出其它類。如果一個(gè)密封類被指定為其他類的基類,則會(huì)發(fā)生編譯時(shí)錯(cuò)誤。

          密封類不能同時(shí)為抽象類。

          sealed 修飾符主要用于防止非有意的派生,但是它還能促使某些運(yùn)行時(shí)優(yōu)化。具體說(shuō)來(lái),由于密封類永遠(yuǎn)不會(huì)有任何派生類,所以對(duì)密封類的實(shí)例的虛擬函數(shù)成員的調(diào)用可以轉(zhuǎn)換為非虛擬調(diào)用來(lái)處理。


          8.列舉ADO.NET中的五個(gè)主要對(duì)象,并簡(jiǎn)單描述

          connection,command,dataReader,trans,dataset ...

          9.執(zhí)行下面代碼后:

          String strTemp ="abcdefg 某某某";

          Int i System.Text.Encoding.Default.GetBytes(strTemp).Length;

          Int j = strTemp.Length;

          問(wèn):i=(14 ) ;j=(11 )

          i=(14 ) ;j=(11 ) 中文兩個(gè)字節(jié)

          10.C#中,string str = null 與 string str ="",請(qǐng)盡量用文字說(shuō)明區(qū)別。(要點(diǎn):說(shuō)明詳細(xì)的內(nèi)存空間分配)

          string str ="" 分配空間

          11.詳述.NET里class和struct的異同!

          class:放在 ? struct放在?

          struct值傳遞

          類與結(jié)構(gòu)有很多相似之處:結(jié)構(gòu)可以實(shí)現(xiàn)接口,并且可以具有與類相同的成員類型。然而,結(jié)構(gòu)在幾個(gè)重要方面不同于類:結(jié)構(gòu)為值類型而不是引用類型,并且結(jié)構(gòu)不支持繼承。結(jié)構(gòu)的值存儲(chǔ)在“在堆棧上”或“內(nèi)聯(lián)”。細(xì)心的程序員有時(shí)可以通過(guò)聰明地使用結(jié)構(gòu)來(lái)增強(qiáng)性能。

          12.概述.NET里對(duì) remoting 和 webservice 兩項(xiàng)技術(shù)的理解和實(shí)際中的應(yīng)用。

          遠(yuǎn)程邏輯調(diào)用,remoing接口只能用在.net中

          13.什么是code-behind技術(shù)

          aspx and cs

          14.概述三層結(jié)構(gòu)體系

          web/business/dataaccess

          15.asp.net如何實(shí)現(xiàn)MVC模式,舉例說(shuō)明!

          web/business/dataaccess

           

          1.面向?qū)ο蟮乃枷胫饕ㄊ裁矗?/p>

          答:這個(gè)題范圍太廣,不知道說(shuō)什么.

          2.什么是ASP.net中的用戶控件

          答:用戶控件就是.ascx擴(kuò)展名的東西嘍,可以拖到不同的頁(yè)面中調(diào)用,以節(jié)省代碼.比如登陸可能在多個(gè)頁(yè)面上有,就可以做成用戶控件,但是有一個(gè)問(wèn)題就是用戶控件拖到不同級(jí)別的目錄下后里面的圖片等的相對(duì)路徑會(huì)變得不準(zhǔn)確,需要自已寫方法調(diào)整.

          3.什么叫應(yīng)用程序域?什么是受管制的代碼?什么是強(qiáng)類型系統(tǒng)?什么是裝箱和拆箱?什么是重載?CTS、CLS和CLR分別作何解釋?

          答:裝箱就是把值類型轉(zhuǎn)成引用類型,從MS IL角度看好像是boxing,沒(méi)記錯(cuò)的話是把值從堆棧轉(zhuǎn)到堆中.拆箱相反,重載就是指一個(gè)方法名同,參數(shù)個(gè)數(shù)不同,返回值可以相同的方法.CLR是通用語(yǔ)言運(yùn)行時(shí),其它的不清楚.

          4.列舉一下你所了解的XML技術(shù)及其應(yīng)用
           

          答:XML可是好東西,保存配置,站與站之間的交流,WEB SERVICE都要用它.

          5.值類型和引用類型的區(qū)別?寫出C#的樣例代碼。

          答:結(jié)構(gòu)是值類型,類是引用類型,所以傳結(jié)構(gòu)就是值類型的應(yīng)用啦,傳對(duì)象或類就是引用類型的,這個(gè)不用多寫了吧.

          6.ADO.net中常用的對(duì)象有哪些?分別描述一下。

          答:connection command sqladapter dataset datatable dataview等等.寫不完了.

          7.如何理解委托?

          答:據(jù)說(shuō)相當(dāng)于函數(shù)指針,定義了委托就可以在不調(diào)用原方法名稱的情況下調(diào)用那個(gè)方法.

          msdn2005中是這樣解釋的:

          委托具有以下特點(diǎn):

          委托類似于 C++ 函數(shù)指針,但它是類型安全的。

          委托允許將方法作為參數(shù)進(jìn)行傳遞。

          委托可用于定義回調(diào)方法。

          委托可以鏈接在一起;例如,可以對(duì)一個(gè)事件調(diào)用多個(gè)方法。

          方法不需要與委托簽名精確匹配。有關(guān)更多信息,請(qǐng)參見(jiàn)協(xié)變和逆變。

          C# 2.0 版引入了匿名方法的概念,此類方法允許將代碼塊作為參數(shù)傳遞,以代替單獨(dú)定義的方法。

          8.C#中的接口和類有什么異同。

          答:這個(gè)異同可多了,要說(shuō)清楚還真不容易.

          9.。net中讀寫數(shù)據(jù)庫(kù)需要用到哪些類?他們的作用

          答:這個(gè)類自已可以寫的啊,你是指基類嗎?那configuration,sqlconnection,sqlcommand等都要用到.

          10.UDP連接和TCP連接的異同。

          答:前者只管傳,不管數(shù)據(jù)到不到,無(wú)須建立連接.后者保證傳輸?shù)臄?shù)據(jù)準(zhǔn)確,須要連結(jié).

          11.ASP.net的身份驗(yàn)證方式有哪些?分別是什么原理?

          答:form認(rèn)證,windows集成認(rèn)證等,原理不清楚.

          12.進(jìn)程和線程分別怎么理解?

          答:進(jìn)程是老子,線程是兒子,沒(méi)有老子就沒(méi)有兒子,一個(gè)老子可以有多個(gè)兒子.一個(gè)兒子可以成為別人的兒子,一個(gè)老子也可以為別的老子生兒子.

          13.什么是code-Behind技術(shù)。

          答:代碼分離,這是個(gè)明智的東西,像ASP這樣混成一堆很不爽.或者可以理解成HTML代碼寫在前臺(tái),C#代碼寫在后臺(tái).當(dāng)然前臺(tái)也有腳本,類的調(diào)用等,其實(shí)寫在一起也是可以的.

          14.活動(dòng)目錄的作用。

          答:這個(gè)不明白.請(qǐng)明白的補(bǔ)充一下.

          15..net中讀寫XML的類都?xì)w屬于哪些命名空間?

          答:System.Xml

          我自已寫的就不一定了,嘿嘿.

          16.解釋一下UDDI、WSDL的意義及其作用。

          答:什么東西?

          17.什么是SOAP,有哪些應(yīng)用。

          答:SOAP(Simple Object Access Protocol )簡(jiǎn)單對(duì)象訪問(wèn)協(xié)議是在分散或分布式的環(huán)境中交換信息并執(zhí)行遠(yuǎn)程過(guò)程調(diào)用的協(xié)議,是一個(gè)基于XML的協(xié)議。使用SOAP,不用考慮任何特定的傳輸協(xié)議(最常用的還是HTTP協(xié)議),可以允許任何類型的對(duì)象或代碼,在任何平臺(tái)上,以任何一直語(yǔ)言相互通信。這種相互通信采用的是XML格式的消息,具體請(qǐng)看:http://playist.blogchina.com/2521621.html

          18.如何部署一個(gè)ASP.net頁(yè)面。

          答:隨便啦,想直接上傳就直接上傳,想打包成EXE就打包,看個(gè)人喜好.

          19.如何理解.net中的垃圾回收機(jī)制。

          答:GC?對(duì)象創(chuàng)建了總要清除啊,不然內(nèi)存哪夠用?

          20.常用的調(diào)用webservice方法有哪些?

          答:調(diào)用就調(diào)用,還有很多方法嗎?

           

          .net筆試題


          姓名:                      日期:

          1.      填空: (1)面向?qū)ο蟮恼Z(yǔ)言具有________性、_________性、________性。

                  (2)能用foreach遍歷訪問(wèn)的對(duì)象需要實(shí)現(xiàn) ________________接口或聲明________________方法的類型。

                  (3)列舉ADO.net中的五個(gè)主要對(duì)象_______________、_____________、_______________、_______________、_________________。

          2. 不定項(xiàng)選擇:

          (1) 以下敘述正確的是:

                A. 接口中可以有虛方法。     B. 一個(gè)類可以實(shí)現(xiàn)多個(gè)接口。
                C. 接口不能被實(shí)例化。       D. 接口中可以包含已實(shí)現(xiàn)的方法。

             (2) 從數(shù)據(jù)庫(kù)讀取記錄,你可能用到的方法有:

                A. ExecuteNonQuery            B. ExecuteScalar

                C. Fill                        D. ExecuteReader

          3. 簡(jiǎn)述 private、 protected、 public、 internal 修飾符的訪問(wèn)權(quán)限。


          4. 寫出一條Sql語(yǔ)句: 取出表A中第31到第40記錄(SQLServer, 以自動(dòng)增長(zhǎng)的ID作為主鍵,  注意:ID可能不是連續(xù)的。)


          5 .列舉ASP.NET 頁(yè)面之間傳遞值的幾種方式。


          6. 寫出程序的輸出結(jié)果

          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);
                 } 
              }


          7.寫出程序的輸出結(jié)果

          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();
                  }
          }


          8.      寫出程序的輸出結(jié)果:
          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);         
                  }
          }

           

          9. 一列數(shù)的規(guī)則如下: 1、1、2、3、5、8、13、21、34......

             求第30位數(shù)是多少, 用遞歸算法實(shí)現(xiàn)。(C#語(yǔ)言)


          10.  程序設(shè)計(jì): 貓大叫一聲,所有的老鼠都開(kāi)始逃跑,主人被驚醒。(C#語(yǔ)言)

          要求:  1.要有聯(lián)動(dòng)性,老鼠和主人的行為是被動(dòng)的。

          2.考慮可擴(kuò)展性,貓的叫聲可能引起其他聯(lián)動(dòng)效應(yīng)。


          參考答案:
          1. (1)  繼承性、封裝性、多態(tài)性。(考基本概念)
             (2)  IEnumerable 、 GetEnumerator (對(duì)foreach機(jī)制的理解,本來(lái)不想出這題的,湊分)
             (3)  ... (送分題, 對(duì)ADO.net的了解)
          評(píng)分標(biāo)準(zhǔn):一空1分,滿分10分。

           

          2. (1) B、C (考對(duì)接口的理解)  (2)  B、C、D (考查對(duì)ADO.net的熟練程度)
            評(píng)分標(biāo)準(zhǔn): 一題5分,不選或者錯(cuò)選均不得分。漏選得2分。滿分10分。

           

          3. . private :   私有成員, 在類的內(nèi)部才可以訪問(wèn)。
               protected : 保護(hù)成員,該類內(nèi)部和繼承類中可以訪問(wèn)。
               public :    公共成員,完全公開(kāi),沒(méi)有訪問(wèn)限制。
               internal:   在同一命名空間內(nèi)可以訪問(wèn)。
          評(píng)分標(biāo)準(zhǔn):答對(duì)1題2分,2題5分,3題7分。全對(duì)10分。 (送分題)

           

          4.  解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)
              評(píng)分標(biāo)準(zhǔn): 寫對(duì)即10分。(答案不唯一,datagrid 分頁(yè)可能需要用到)
           
          5.  1.使用QueryString,  如....?id=1; response. Redirect()....
              2.使用Session變量
              3.使用Server.Transfer
              ....等等
             評(píng)分標(biāo)準(zhǔn): 答對(duì)1點(diǎn)得3分, 兩點(diǎn)7分, 3點(diǎn)10分。


          6.  (考查值引用和對(duì)象引用)
          10
          21
          0
          str
          string being converted.
          評(píng)分標(biāo)準(zhǔn):答對(duì)一點(diǎn)得2分,滿分10分。


          7.  A
              B
          A.Fun()
          評(píng)分標(biāo)準(zhǔn): 寫出A.B 得5分,寫出A.Fun()得5分,滿分10分。
          (考查在繼承類中構(gòu)造函數(shù), 以及new 方法, )

           


          8.  2
              5
              1
              6

           

          (一些人做這題,頭都暈了.... ^_^ )

           

          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);
                  }
              }
          評(píng)分標(biāo)準(zhǔn): 寫出return Foo(i -1) + Foo(i - 2); 得5分。

           寫出if(i > 0 && i <= 2) return 1; 得5分。

                     方法參數(shù)過(guò)多需要扣分(扣除分?jǐn)?shù) = 參數(shù)個(gè)數(shù) - 1)

                     不用遞歸算法扣5分

                     (遞歸算法在樹(shù)結(jié)構(gòu)建立等方面比較常用)

           

          10          

           要點(diǎn):1. 聯(lián)動(dòng)效果,運(yùn)行代碼只要執(zhí)行Cat.Cryed()方法。2. 對(duì)老鼠和主人進(jìn)行抽象
          評(píng)分標(biāo)準(zhǔn): <1>.構(gòu)造出Cat、Mouse、Master三個(gè)類,并能使程序運(yùn)行(2分)
                      <2>從Mouse和Master中提取抽象(5分)
                      <3>聯(lián)動(dòng)效應(yīng),只要執(zhí)行Cat.Cryed()就可以使老鼠逃跑,主人驚醒。(3分)


              public interface Observer
              {
                  void Response();    //觀察者的響應(yīng),如是老鼠見(jiàn)到貓的反映
              }
              public interface Subject
              {
                  void AimAt(Observer obs);  //針對(duì)哪些觀察者,這里指貓的要撲捉的對(duì)象---老鼠
              }
              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();
                  }
              }


          //---------------------------------------------------------------------------------------------

          設(shè)計(jì)方法二: 使用event -- delegate設(shè)計(jì)..
              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. C#中 property 與 attribute的區(qū)別,他們各有什么用處,這種機(jī)制的好處在哪里?

          2. 講一講你理解的web service,在dot net framework中,怎么很好的結(jié)合xml?(講概念就行了)

          3. C#, Java 和 c++的特點(diǎn),有什么相同的地方,不同的地方,C#分別從c++和java中吸取了他們那些優(yōu)點(diǎn)?

          4. C#可否對(duì)內(nèi)存進(jìn)行直接的操作?(這可是個(gè)難點(diǎn)哦?要注意!)

          5. 用Visual C++ 6.0編寫的代碼(unmanaged code),如何在CLR下和其他dot net component結(jié)合?

          6. 以前作過(guò)的一些項(xiàng)目?介紹一下自己的編程經(jīng)驗(yàn)。(這是蒙混不過(guò)去的,基本一問(wèn)就知道是真是假)

          7. 你對(duì)公司有什么期望?你的薪水期望值?為什么學(xué)計(jì)算機(jī)?以前的工作經(jīng)驗(yàn)(這非常重要)?

           

          Q3: 維護(hù)數(shù)據(jù)庫(kù)的完整性、一致性、你喜歡用觸發(fā)器還是自寫業(yè)務(wù)邏輯?為什么

          Q4:ADO。NET相對(duì)于ADO等主要有什么改進(jìn)?

          Q5:ASP。NET與ASP相比,主要有哪些進(jìn)步?

          Q6:C#中的委托是什么?事件是不是一種委托?

          Q7:描述一下C#中索引器的實(shí)現(xiàn)過(guò)程,是否只能根據(jù)數(shù)字進(jìn)行索引?

          Q8:C#中要使一個(gè)類支持FOREACH遍歷,實(shí)現(xiàn)過(guò)程怎樣?

          Q10:寫一個(gè)HTML頁(yè)面,實(shí)現(xiàn)以下功能,左鍵點(diǎn)擊頁(yè)面時(shí)顯示“您好”,右鍵點(diǎn)擊時(shí)顯示“禁止右鍵”。并在2分鐘后自動(dòng)關(guān)閉頁(yè)面。

          Q11:你對(duì)XMLHTTP、WEBSERVICE 了解嗎?簡(jiǎn)單描述其特點(diǎn)、作用

          Q12:接口和抽象類有什么區(qū)別?你選擇使用接口和抽象類的依據(jù)是什么?

          Q13:自定義控件和一般用戶控件的異同?如果要用這兩者之一,你會(huì)選擇哪種?為什么

          Q14:大概描述一下ASP。NET服務(wù)器控件的生命周期

          Q15:UML

          Q16:面向?qū)ο蟮母拍睿饕攸c(diǎn)

          Q17:類劃分的依據(jù)。類粒度問(wèn)題

          Q18:事物管理問(wèn)題

           

          第一,談?wù)刦inal, finally, finalize的區(qū)別。

          第二,Anonymous Inner Class (匿名內(nèi)部類) 是否可以extends(繼承)其它類,是否可以implements(實(shí)現(xiàn))interface(接口)?

          第三,Static Nested Class 和 Inner Class的不同,說(shuō)得越多越好(面試題有的很籠統(tǒng))。

          第四,&和&&的區(qū)別。

          第五,HashMap和Hashtable的區(qū)別。

          第六,Collection 和 Collections的區(qū)別。

          第七,什么時(shí)候用assert。

          第八,GC是什么? 為什么要有GC?

          第九,String s = new String("xyz");創(chuàng)建了幾個(gè)String Object?

          第十,Math.round(11.5)等於多少? Math.round(-11.5)等於多少?

          第十一,short s1 = 1; s1 = s1 + 1;有什么錯(cuò)? short s1 = 1; s1 += 1;有什么錯(cuò)?

          第十二,sleep() 和 wait() 有什么區(qū)別?

          第十三,Java有沒(méi)有g(shù)oto?

          第十四,數(shù)組有沒(méi)有l(wèi)ength()這個(gè)方法? String有沒(méi)有l(wèi)ength()這個(gè)方法?

          第十五,Overload和Override的區(qū)別。Overloaded的方法是否可以改變返回值的類型?

          第十六,Set里的元素是不能重復(fù)的,那么用什么方法來(lái)區(qū)分重復(fù)與否呢? 是用==還是equals()? 它們有何區(qū)別?

          第十七,給我一個(gè)你最常見(jiàn)到的runtime exception。

          第十八,error和exception有什么區(qū)別?

          第十九,List, Set, Map是否繼承自Collection接口?

          第二十,abstract class和interface有什么區(qū)別?

          第二十一,abstract的method是否可同時(shí)是static,是否可同時(shí)是native,是否可同時(shí)是synchronized?

          第二十二,接口是否可繼承接口? 抽象類是否可實(shí)現(xiàn)(implements)接口? 抽象類是否可繼承實(shí)體類(concrete class)?

          第二十三,啟動(dòng)一個(gè)線程是用run()還是start()?

          第二十四,構(gòu)造器Constructor是否可被override?

          第二十五,是否可以繼承String類?

          第二十六,當(dāng)一個(gè)線程進(jìn)入一個(gè)對(duì)象的一個(gè)synchronized方法后,其它線程是否可進(jìn)入此對(duì)象的其它方法?

          第二十七,try {}里有一個(gè)return語(yǔ)句,那么緊跟在這個(gè)try后的finally {}里的code會(huì)不會(huì)被執(zhí)行,什么時(shí)候被執(zhí)行,在return前還是后?

          第二十八,編程題: 用最有效率的方法算出2乘以8等於幾?

          第二十九,兩個(gè)對(duì)象值相同(x.equals(y) == true),但卻可有不同的hash code,這句話對(duì)不對(duì)?

          第三十,當(dāng)一個(gè)對(duì)象被當(dāng)作參數(shù)傳遞到一個(gè)方法后,此方法可改變這個(gè)對(duì)象的屬性,并可返回變化后的結(jié)果,那么這里到底是值傳遞還是引用傳遞?

          第三十一,swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?

          第三十二,編程題: 寫一個(gè)Singleton出來(lái)。

           

          數(shù)據(jù)庫(kù)方面:

           

          1.存儲(chǔ)過(guò)程和函數(shù)的區(qū)別

          2.事務(wù)是什么?

          3.游標(biāo)的作用?如何知道游標(biāo)已經(jīng)到了最后?

          4.觸發(fā)器分為事前觸發(fā)和事后觸發(fā),這兩種觸發(fā)有和區(qū)別。語(yǔ)句級(jí)觸發(fā)和行級(jí)觸發(fā)有何區(qū)別。

           

          1。用C#實(shí)現(xiàn)以下功能

             a 產(chǎn)生一個(gè)int數(shù)組,長(zhǎng)度為100,并向其中隨機(jī)插入1-100,并且不能重復(fù)。

             b 對(duì)上面生成的數(shù)組排序,需要支持升序、降序兩種順序

          2。請(qǐng)說(shuō)明在.net中常用的幾種頁(yè)面間傳遞參數(shù)的方法,并說(shuō)出他們的優(yōu)缺點(diǎn)。

          3。請(qǐng)說(shuō)明.net中的錯(cuò)誤處理機(jī)制,并舉例

          4。請(qǐng)說(shuō)出強(qiáng)名的含義

          5。請(qǐng)列出c#中幾種循環(huán)的方法,并指出他們的不同

          6。請(qǐng)指出.net中所有類型的基類

          7。請(qǐng)指出GAC的含義

          8。SQL SREVER中,向一個(gè)表中插入了新數(shù)據(jù),如何快捷的得到自增量字段的當(dāng)前值

           

          您在什么情況下會(huì)用到虛方法?它與接口有什么不同?

          Q:Override與重載有什么區(qū)別?

          Q:值類型與引用類型有什么區(qū)別?

          Q:怎樣理解靜態(tài)變量?

          Q:向服務(wù)器發(fā)送請(qǐng)求有幾種方式?

          Q:DataReader與Dataset有什么區(qū)別?

          Q:如果在一個(gè)B/S結(jié)構(gòu)的系統(tǒng)中需要傳遞變量值,但是又不能使用Session、Cookie、Application,您有幾種方法進(jìn)行處理?

          Q:用.net做B/S結(jié)構(gòu)的系統(tǒng),您是用幾層結(jié)構(gòu)來(lái)開(kāi)發(fā),每一層之間的關(guān)系以及為什么要這樣分層?

          Q:軟件開(kāi)發(fā)過(guò)程一般有幾個(gè)階段?每個(gè)階段的作用?

          Q:微軟推出了一系列的Application Block,請(qǐng)舉出您所知道的Application Block并說(shuō)明其作用?

          Q:請(qǐng)列舉一些您用到過(guò)的設(shè)計(jì)模式以及在什么情況下使用該模式?

          Q:您對(duì)WebService的體會(huì)?

          Q:您對(duì)編程的興趣如何?工作中遇到不懂的問(wèn)題是怎樣去解決的?您一般怎樣去提高自己的編程水平?

          Q:您離職的原因是什么?

          Q:通過(guò)超鏈接怎樣傳遞中文參數(shù)?

          Q:請(qǐng)編程遍歷頁(yè)面上所有TextBox控件并給它賦值為string.Empty?

          Q:請(qǐng)編程實(shí)現(xiàn)一個(gè)冒泡排序算法?

           

          1、override與重載的區(qū)別

          2、.net的錯(cuò)誤處理機(jī)制是什么

          3、C#中接口和類的異同

          4、DataReader和DataSet的異同

           

          1.有哪幾種方法可以實(shí)現(xiàn)一個(gè)類存取另外一個(gè)類的成員函數(shù)及屬性,并請(qǐng)舉列來(lái)加以說(shuō)明和分析.

          2.如果需記錄類的實(shí)例個(gè)數(shù),該如何實(shí)現(xiàn),請(qǐng)寫一個(gè)簡(jiǎn)單的類于以證明.

          3.A類是B類的基類,并且都有自己的構(gòu)造,析構(gòu)函數(shù),請(qǐng)舉例證明B類從實(shí)例化到消亡過(guò)程中構(gòu)造,析構(gòu)函數(shù)的執(zhí)行過(guò)程.

          4.需要實(shí)現(xiàn)對(duì)一個(gè)字符串的處理,首先將該字符串首尾的空格去掉,如果字符串中間還有連續(xù)空格的話,僅保留一個(gè)空格,即允許字符串中間有多個(gè)空格,但連續(xù)的空格數(shù)不可超過(guò)一個(gè).

           

          一.填空題

          1.c#中的三元運(yùn)算符是__?:___?

          2.當(dāng)整數(shù)a賦值給一個(gè)object對(duì)象時(shí),整數(shù)a將會(huì)被__裝箱(封裝)___?

          3.類成員有_____種可訪問(wèn)形式?  this.;new Class().Method;

          4.public static const int A=1;這段代碼有錯(cuò)誤么?是什么?  const不能用static修飾

          5.float f=-123.567F;

            int i=(int)f;

          i的值現(xiàn)在是_____?   123 

          6.利用operator聲明且僅聲明了“==”,有什么錯(cuò)誤么? 

          7.委托聲明的關(guān)鍵字是______? delagete

          8.用sealed修飾的類有什么特點(diǎn)?密封,不能繼承

          9.在Asp.net中所有的自定義用戶控件都必須繼承自________?Control

          10.在.Net中所有可序列化的類都被標(biāo)記為_(kāi)____? 

          11.在.Net托管代碼中我們不用擔(dān)心內(nèi)存漏洞,這是因?yàn)橛辛薩_____?gc

          12.下面的代碼中有什么錯(cuò)誤嗎?_______

               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.當(dāng)類T只聲明了私有實(shí)例構(gòu)造函數(shù)時(shí),則在T的程序文本外部,___可以___(可以 or 不可以)從T派生出新的類,不可以____(可以 or 不可以)直接創(chuàng)建T的任何實(shí)例。

          14.下面這段代碼有錯(cuò)誤么?

              switch (i){

              case():

                  CaseZero();

                  break;

              case 1:

                  CaseOne();

                  break;

              case 2:

                  dufault;  //wrong

                  CaseTwo();

                  break;

             }

          15.在.Net中,類System.Web.UI.Page 可以被繼承么?可以

           

          二.簡(jiǎn)答題

          1.在c#中using和new這兩個(gè)關(guān)鍵字有什么意義,請(qǐng)寫出你所知道的意義?using 指令 和語(yǔ)句 new 創(chuàng)建實(shí)例 new 隱藏基類中方法

          4.談?wù)勵(lì)惡徒Y(jié)構(gòu)的區(qū)別?類是引用類型、結(jié)構(gòu)是值類型

          5.一個(gè)長(zhǎng)度為10000的字符串,通過(guò)隨機(jī)從a-z中抽取10000個(gè)字符組成。請(qǐng)用c#語(yǔ)言編寫主要程序來(lái)實(shí)現(xiàn)。

          6.對(duì)于這樣的一個(gè)枚舉類型:

                enum Color:byte{

                    Red,

                    Green,

                    Blue,

                    Orange

                 }

               string[] ss=Enum.GetNames(typeof(Color));

               byte[]   bb=Enum.GetValues(typeof(Color));

          試寫一段程序顯示出枚舉類型中定義的所有符號(hào)名稱以及它們對(duì)應(yīng)的數(shù)值。

          7.您了解設(shè)計(jì)模式么?請(qǐng)列出您所知道的設(shè)計(jì)模式的名稱。 //

          8.請(qǐng)?jiān)赟QL Server中設(shè)計(jì)表來(lái)保存一個(gè)樹(shù)狀結(jié)構(gòu)的組織結(jié)構(gòu)圖(假設(shè)結(jié)構(gòu)圖中只有名稱這一項(xiàng)內(nèi)容需要保存),如果我想查詢某一職位下的所有職位,用一個(gè)存儲(chǔ)過(guò)程來(lái)實(shí)現(xiàn),你有什么思路?

          9.什么叫做SQL注入,如何防止?請(qǐng)舉例說(shuō)明。

          10.下面這段代碼輸出什么?為什么?

               int i=5;

               int j=5;

               if (Object.ReferenceEquals(i,j))

                    Console.WriteLine("Equal");

               else

                    Console.WriteLine("Not Equal");

          //不相等,因?yàn)楸容^的是對(duì)象

           

          1.寫一個(gè)實(shí)現(xiàn)對(duì)一段字符串翻轉(zhuǎn)的方法,附加一些條件,如其中包括“,”、“.”,對(duì)其設(shè)計(jì)測(cè)試用 例 。

          2.對(duì)一支紙杯設(shè)計(jì)測(cè)試用例(可以是廣義的杯,不一定是某一支特定功能的杯)

          開(kāi)發(fā)語(yǔ)言概念題

          3.什么是反射?

          4.用Singleton如何寫設(shè)計(jì)模式

          5.C#中的垃圾回收機(jī)制是怎樣的?

          6.什么是Application Pool?

          7.鏈表和數(shù)組的區(qū)別,各有什么優(yōu)缺點(diǎn).

          8.Remoting在客戶端服務(wù)器怎么實(shí)現(xiàn) ?

          9.什么是友元函數(shù)?

          10.用標(biāo)準(zhǔn)C如何實(shí)現(xiàn)多態(tài)?

          11.什么是虛函數(shù)?

          12.什么是抽象函數(shù)?

          13.什么是內(nèi)存泄漏,怎樣最簡(jiǎn)單的方法判斷被存泄漏 ?

          14.用英文介紹一下使用C#/C++做的項(xiàng)目,主要功能

          15.如果要與美國(guó)開(kāi)電話會(huì)議,會(huì)如何與美國(guó)的工程師溝通

          16.如果老板認(rèn)為你的技術(shù)落后,你會(huì)怎么回答 

          數(shù)據(jù)庫(kù)知識(shí)題

          17.使用什么工具來(lái)調(diào)用存儲(chǔ)過(guò)程

          18.SQL Server的兩種索引是何形式?索引的作用?索引的優(yōu)缺點(diǎn)?

          19.觸發(fā)器的作用 

          其它知識(shí)題及問(wèn)題

          20.什么是Web Service?

          21.什么是XML?

          22.Socket怎么實(shí)現(xiàn)

           

           

          Q:您在什么情況下會(huì)用到虛方法?它與接口有什么不同?

          Q:Override與重載有什么區(qū)別?

          Q:值類型與引用類型有什么區(qū)別?

          Q:怎樣理解靜態(tài)變量?

          Q:向服務(wù)器發(fā)送請(qǐng)求有幾種方式?

          Q:DataReader與Dataset有什么區(qū)別?

          Q:如果在一個(gè)B/S結(jié)構(gòu)的系統(tǒng)中需要傳遞變量值,但是又不能使用Session、Cookie、Application,您有幾種方法進(jìn)行處理?

          Q:用.net做B/S結(jié)構(gòu)的系統(tǒng),您是用幾層結(jié)構(gòu)來(lái)開(kāi)發(fā),每一層之間的關(guān)系以及為什么要這樣分層?

          Q:軟件開(kāi)發(fā)過(guò)程一般有幾個(gè)階段?每個(gè)階段的作用?

          Q:微軟推出了一系列的Application Block,請(qǐng)舉出您所知道的Application Block并說(shuō)明其作用?

          Q:請(qǐng)列舉一些您用到過(guò)的設(shè)計(jì)模式以及在什么情況下使用該模式?

          Q:您對(duì)WebService的體會(huì)?

          Q:您對(duì)編程的興趣如何?工作中遇到不懂的問(wèn)題是怎樣去解決的?您一般怎樣去提高自己的編程水平?

          Q:您離職的原因是什么?

          以下幾道題目如果您不會(huì),請(qǐng)較為詳細(xì)的描述您的解決思路和方法

          Q:通過(guò)超鏈接怎樣傳遞中文參數(shù)?

          Q:請(qǐng)編程遍歷頁(yè)面上所有TextBox控件并給它賦值為string.Empty?

          Q:請(qǐng)編程實(shí)現(xiàn)一個(gè)冒泡排序算法?

           

          1.在對(duì)SQL Server 數(shù)據(jù)庫(kù)操作時(shí)應(yīng)選用(a)。
          a)SQL Server .NET Framework 數(shù)據(jù)提供程序;
          b)OLE DB .NET Framework 數(shù)據(jù)提供程序;
          c)ODBC .NET Framework 數(shù)據(jù)提供程序;
          d)Oracle .NET Framework數(shù)據(jù)提供程序;
          2.下列選項(xiàng)中,(c)是引用類型。
          a)enum類型
          b)struct類型
          c)string類型
          d)int類型
          3.關(guān)于ASP.NET中的代碼隱藏文件的描述正確的是(a)
          a)Web窗體頁(yè)的程序的邏輯由代碼組成,這些代碼的創(chuàng)建用于與窗體交互。編程邏輯唯一與用戶界面不同的文件中。該文件稱作為“代碼隱藏”文件,如果用C#創(chuàng)建,該文件將具有“.ascx.cs”擴(kuò)展名。
          b)項(xiàng)目中所有Web窗體頁(yè)的代碼隱藏文件都被編譯成.EXE文件。
          c)項(xiàng)目中所有的Web窗體頁(yè)的代碼隱藏文件都被編譯成項(xiàng)目動(dòng)態(tài)鏈接庫(kù)(.dll)文件。
          d)以上都不正確。
          4.以下描述錯(cuò)誤的是(a)
          a)在C++中支持抽象類而在C#中不支持抽象類。
          b)C++中可在頭文件中聲明類的成員而在CPP文件中定義類的成員,在C#中沒(méi)有頭文件并且在同一處聲明和定義類的成員。
          c)在C#中可使用 new 修飾符顯式隱藏從基類繼承的成員。
          d)在C#中要在派生類中重新定義基類的虛函數(shù)必須在前面加Override。
          5.C#的數(shù)據(jù)類型有(b)
          a)值類型和調(diào)用類型;
          b)值類型和引用類型;
          c)引用類型和關(guān)系類型;
          d)關(guān)系類型和調(diào)用類型;
          6.下列描述錯(cuò)誤的是(d)
          a)類不可以多重繼承而接口可以;
          b)抽象類自身可以定義成員而接口不可以;
          c)抽象類和接口都不能被實(shí)例化;
          d)一個(gè)類可以有多個(gè)基類和多個(gè)基接口;
          7.在DOM中,裝載一個(gè)XML文檔的方法(b)
          a)save方法
          b)load方法
          c)loadXML方法
          d)send方法
          8.下列關(guān)于構(gòu)造函數(shù)的描述正確的是(c)
          a)構(gòu)造函數(shù)可以聲明返回類型。
          b)構(gòu)造函數(shù)不可以用private修飾
          c)構(gòu)造函數(shù)必須與類名相同
          d)構(gòu)造函數(shù)不能帶參數(shù)
          9.以下是一些C#中的枚舉型的定義,其中錯(cuò)誤的用法有(a)
          a)public enum var1{ Mike = 100, Nike = 102, Jike }
          b)public enum var1{ Mike = 100, Nike, Jike }
          c)public enum var1{ Mike=-1 , Nike, Jike }
          d)public enum var1{ Mike , Nike , Jike }
          10.int[][] myArray3=new int[3][]{new int[3]{5,6,2},new int[5]{6,9,7,8,3},new int[2]{3,2}}; myArray3[2][2]的值是(d)。
          a)9
          b)2
          c)6
          d)越界
          11.接口是一種引用類型,在接口中可以聲明(a),但不可以聲明公有的域或私有的成員變量。
          a)方法、屬性、索引器和事件;
          b)方法、屬性信息、屬性;
          c)索引器和字段;
          d)事件和字段;
          12.ASP.NET框架中,服務(wù)器控件是為配合Web表單工作而專門設(shè)計(jì)的。服務(wù)器控件有兩種類型,它們是(a)
          a)HTML控件和Web控件
          b)HTML控件和XML控件
          c)XML控件和Web控件
          d)HTML控件和IIS控件
          13.ASP.NET中,在Web窗體頁(yè)上注冊(cè)一個(gè)用戶控件,指定該控件的名稱為”Mike”,正確的注冊(cè)指令為(b)
          a)<%@Register TagPrefix = “Mike” TagName = “Space2” Src = “myX.ascx”%>
          b)<%@Register TagPrefix = “Space2” TagName = “Mike” Src = “myX.ascx”%>
          c)<%@Register TagPrefix = “SpaceX” TagName = “Space2” Src = “Mike”%>
          d)以上皆非
          14.在ADO.NET中,對(duì)于Command對(duì)象的ExecuteNonQuery()方法和ExecuteReader()方法,下面敘述錯(cuò)誤的是(c)。
          a)insert、update、delete等操作的Sql語(yǔ)句主要用ExecuteNonQuery()方法來(lái)執(zhí)行;
          b)ExecuteNonQuery()方法返回執(zhí)行Sql語(yǔ)句所影響的行數(shù)。
          c)Select操作的Sql語(yǔ)句只能由ExecuteReader()方法來(lái)執(zhí)行;
          d)ExecuteReader()方法返回一個(gè)DataReder對(duì)象;
          15.下列ASP.NET語(yǔ)句(b)正確地創(chuàng)建了一個(gè)與SQL Server 2000數(shù)據(jù)庫(kù)的連接。
          a)SqlConnection con1 = new Connection(“Data Source = localhost; Integrated Security = SSPI; Initial Catalog = myDB”);
          b)SqlConnection con1 = new SqlConnection(“Data Source = localhost; Integrated Security = SSPI; Initial Catalog = myDB”);
          c)SqlConnection con1 = new SqlConnection(Data Source = localhost; Integrated Security = SSPI; Initial Catalog = myDB);
          d)SqlConnection con1 = new OleDbConnection(“Data Source = localhost; Integrated Security = SSPI; Initial Catalog = myDB”);
          16.Winform中,關(guān)于ToolBar控件的屬性和事件的描述不正確的是(d)。
          a)Buttons屬性表示ToolBar控件的所有工具欄按鈕
          b)ButtonSize屬性表示ToolBar控件上的工具欄按鈕的大小,如高度和寬度
          c)DropDownArrows屬性表明工具欄按鈕(該按鈕有一列值需要以下拉方式顯示)旁邊是否顯示下箭頭鍵
          d)ButtonClick事件在用戶單擊工具欄任何地方時(shí)都會(huì)觸發(fā)
          17.在ADO.NET中執(zhí)行一個(gè)存儲(chǔ)過(guò)程時(shí),如果要設(shè)置輸出參數(shù)則必須同時(shí)設(shè)置參數(shù)的方向和(d ),必要時(shí)還要設(shè)置參數(shù)尺寸。
          a)大小;
          b)上限;
          c)初始值;
          d)類型;

          18.如果將窗體的FormBoderStyle設(shè)置為None,則(B)。
          a)窗體沒(méi)有邊框并不能調(diào)整大小;
          b)窗體沒(méi)有邊框但能調(diào)整大小;
          c)窗體有邊框但不能調(diào)整大小;
          d)窗體是透明的;
          19.如果要將窗體設(shè)置為透明的,則( b)
          a)要將FormBoderStyle屬性設(shè)置為None;
          b)要將Opacity屬性設(shè)置為小于100%得值;
          c)要將locked 屬性設(shè)置為True;
          d)要將 Enabled屬性設(shè)置為True;
          20.下列關(guān)于C#中索引器理解正確的是(c )
          a)索引器的參數(shù)必須是兩個(gè)或兩個(gè)以上
          b)索引器的參數(shù)類型必須是整數(shù)型
          c)索引器沒(méi)有名字
          d)以上皆非
          21.下面描述錯(cuò)誤的是(D )。
          a)窗體也是控件;
          b)窗體也是類;
          c)控件是從窗體繼承來(lái)的;
          d)窗體的父類是控件類;
          22.要對(duì)注冊(cè)表進(jìn)行操作則必須包含(D )。
          a)System.ComponentModel命名空間;
          b)System.Collections命名空間;
          c)System.Threading命名空間;
          d)Microsoft.Win32命名空間;
          23.要?jiǎng)?chuàng)建多文檔應(yīng)用程序,需要將窗體的(d )屬性設(shè)為true。
          a)DrawGrid;
          b)ShowInTaskbar;
          c)Enabled;
          d)IsMdiContainer;
          24.如果設(shè)treeView1=new TreeView(),則treeView1.Nodes.Add("根節(jié)點(diǎn)")返回的是一個(gè) (a)類型的值。
          a)TreeNode;
          b)int;
          c)string;
          d)TreeView; 

           25.下面關(guān)于XML的描述錯(cuò)誤的是( d)。
          a)XML提供一種描述結(jié)構(gòu)化數(shù)據(jù)的方法;
          b)XML 是一種簡(jiǎn)單、與平臺(tái)無(wú)關(guān)并被廣泛采用的標(biāo)準(zhǔn);
          c)XML文檔可承載各種信息;
          d)XML只是為了生成結(jié)構(gòu)化文檔;
          26. 以下的C#代碼,試圖用來(lái)定義一個(gè)接口:
          public interface IFile
          {
          int A;
          int delFile()
          {
          A = 3;
          }
          void disFile();
          }
          關(guān)于以上的代碼,以下描述錯(cuò)誤的是(A,B )。
          a)以上的代碼中存在的錯(cuò)誤包括:不能在接口中定義變量,所以int A代碼行將出現(xiàn)錯(cuò)誤;
          b)以上的代碼中存在的錯(cuò)誤包括:接口方法delFile是不允許實(shí)現(xiàn)的,所以不能編寫具體的實(shí)現(xiàn)函數(shù);
          c)代碼void disFile();聲明無(wú)錯(cuò)誤,接口可以沒(méi)有返回值;
          d)代碼void disFile();應(yīng)該編寫為void disFile(){};
          29.在C#中利用Socket進(jìn)行網(wǎng)絡(luò)通信編程的一般步驟是:建立Socket偵聽(tīng)、( a)30.聲明一個(gè)委托public delegate int myCallBack(int x); 則用該委托產(chǎn)生的回調(diào)方法的原型應(yīng)該是(b )。
          a)void myCallBack(int x) ;
          b)int receive(int num) ;
          c)string receive(int x) ;
          d)不確定的;
          二、判斷題,對(duì)的打√錯(cuò)的打×(每小題2分,共20分)
          1.( T)在C#中,裝箱操作是將值類型轉(zhuǎn)化成引用類型。
          2.( F)接口中的成員不可以有訪問(wèn)域修飾符,但可以有其它修飾符。
          3.( F)在C#中,索引器是專門用來(lái)訪問(wèn)對(duì)象中的數(shù)組信息的。
          4.( T)在C#中,接口可以被多重繼承而類不能。
          5.( F)在C#中,int[][]是定義一個(gè)int型的二維數(shù)組。
          6.( T)異常類對(duì)象均為System.Exception類的對(duì)象。
          7.(T ) 當(dāng)窗體最小化后,再次還原成為活動(dòng)窗體時(shí)將自動(dòng)觸發(fā)Paint事件。
          8.( T) ASP.NET中,使用驗(yàn)證控件來(lái)驗(yàn)證用戶輸入,要求用戶不可跳過(guò)該項(xiàng)輸入,并且用戶輸入值在0和1000之間,則適用RequiredFieldValidator和RangeValidator控件。
          9.( F) 聲明委托實(shí)際上是聲明了一個(gè)方法。
          10.(T ) 任何事物都是對(duì)象。 
          1.請(qǐng)簡(jiǎn)述一下用Socket進(jìn)行同步通訊編程的詳細(xì)步驟
          1、在應(yīng)用程序和遠(yuǎn)程設(shè)備中使用協(xié)議和網(wǎng)絡(luò)地址初始化套接字
          2、在應(yīng)用程序中通過(guò)指定端口和地址建立監(jiān)聽(tīng)
          3、遠(yuǎn)程設(shè)備發(fā)出連接請(qǐng)求
          4、應(yīng)用程序接受連接產(chǎn)生通信scoket
          5、應(yīng)用程序和遠(yuǎn)程設(shè)備開(kāi)始通訊(在通訊中應(yīng)用程序?qū)炱鹬钡酵ㄓ嵔Y(jié)束)
          6、通訊結(jié)束,關(guān)閉應(yīng)用程序和遠(yuǎn)程設(shè)備的Socket回收資源
          2.比較ADO 與ADO.NET 的不同。
          posted on 2007-03-30 11:35 圣域飛俠 閱讀(728) 評(píng)論(0)  編輯  收藏 所屬分類: 轉(zhuǎn)載
          主站蜘蛛池模板: 彩票| 新晃| 桑日县| 东城区| 方山县| 盐城市| 镇沅| 泗水县| 花莲县| 浪卡子县| 合江县| 唐山市| 苍溪县| 汉阴县| 广灵县| 商水县| 陆丰市| 秭归县| 岑溪市| 洪洞县| 廊坊市| 枣阳市| 襄城县| 遂川县| 北安市| 勃利县| 图们市| 漠河县| 同江市| 泸州市| 休宁县| 马公市| 岳西县| 南华县| 文成县| 喜德县| 西青区| 晋江市| 凤台县| 蒲城县| 赤城县|