學習啦 > 創(chuàng)業(yè)指南 > 職場 > 筆試題 > C#筆試題及答案

C#筆試題及答案

時間: 護托1061 分享

C#筆試題及答案

  一個C#的結(jié)構(gòu)體與C++的結(jié)構(gòu)體是相似的,因為它能夠包含數(shù)據(jù)聲明和方法.但是,不像C++,C#結(jié)構(gòu)體與類是不同的而且不支持繼承.但是,與Java相同的是,一個結(jié)構(gòu)體可以實現(xiàn)接口。下面就由學習啦小編為大家介紹一下C#筆試題及答案的文章,歡迎閱讀。

  C#筆試題及答案篇1

  1、面向?qū)ο蟮乃枷胫饕ㄊ裁?

  ● 封裝:用抽象的數(shù)據(jù)類型將數(shù)據(jù)和基于數(shù)據(jù)的操作封裝在一起,數(shù)據(jù)被保護在抽象數(shù)據(jù)類型內(nèi)部。

  ● 繼承:子類擁有父類的所有數(shù)據(jù)和操作。

  ● 多態(tài):一個程序中同名的不同方法共存的情況。 有兩種形式的多態(tài)– 重載與重寫。

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

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

  3、new 關(guān)鍵字用法

  (1)new 運算符:用于創(chuàng)建對象和調(diào)用構(gòu)造函數(shù)。

  (2)new 修飾符:用于向基類成員隱藏繼承成員。

  (3)new 約束:用于在泛型聲明中約束可能用作類型參數(shù)的參數(shù)的類型。

  C#筆試題及答案篇2

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

  應用程序域為安全性、可靠性、版本控制以及卸載程序集提供了隔離邊界。應用程序域通常由運行庫宿主創(chuàng)建,運行庫宿主負責在運行應用程序之前引導公共語言運行庫。應用程序域提供了一個更安全、用途更廣的處理單元,公共語言運行庫可使用該單元提供應用程序之間的隔離。

  受管制的代碼:在.Net環(huán)境中運行的任何代碼都是受管制的代碼(managed code),.Net外部的代碼也運行在windows上,這些代碼稱為未受管制的代碼(unmanaged code)。

  使用基于公共語言運行庫的語言編譯器開發(fā)的代碼稱為托管代碼;托管代碼具有許多優(yōu)點,例如:跨語言集成、跨語言異常處理、增強的安全性、版本控制和部署支持、簡化的組件交互模型、調(diào)試和分析服務等。

  強類型語言是能夠禁止任何違反類型系統(tǒng)的代碼的語言,或者說是能夠捕獲所有違反類型系統(tǒng)的錯誤的語言。我們說C++相對于C是強類型的,是因為C++禁止了一些C中的隱式轉(zhuǎn)換,比如將void*轉(zhuǎn)換為任意的指針類型。

  裝箱和拆箱使值類型能夠被視為對象。對值類型裝箱將把該值類型打包到 Object 引用類型的一個實例中。這使得值類型可以存儲于垃圾回收堆中。拆箱將從對象中提取值類型。

  每個類型成員都有一個唯一的簽名。方法簽名由方法名稱和一個參數(shù)列表(方法的參數(shù)的順序和類型)組成。只要簽名不同,就可以在一種類型內(nèi)定義具有相同名稱的多種方法。當定義兩種或多種具有相同名稱的方法時,就稱作重載。

  CTS通用類型系統(tǒng) (common type system)

  一種確定公共語言運行庫如何定義、使用和管理類型的規(guī)范。

  CLR公共語言運行庫

  .NET Framework 提供了一個稱為公共語言運行庫的運行時環(huán)境,它運行代碼并提供使開發(fā)過程更輕松的服務。

  CLS公共語言規(guī)范

  要和其他對象完全交互,而不管這些對象是以何種語言實現(xiàn)的,對象必須只向調(diào)用方公開那些它們必須與之互用的所有語言的通用功能。為此定義了公共語言規(guī)范 (CLS),它是許多應用程序所需的一套基本語言功能。

  2、列舉一下你所了解的XML技術(shù)及其應用

  XML 代表Extensible Markup Language(eXtensible Markup Language的縮寫,意為可擴展的標記語言)。XML是一套定義語義標記的規(guī)則,這些標記將文檔分成許多部件并對這些部件加以標識。它也是元標記語言,即定義了用于定義其他與特定領(lǐng)域有關(guān)的、語義的、結(jié)構(gòu)化的標記語言的句法語言。

  通過XML,你可以在HTML文件之外存儲數(shù)據(jù);可以在不兼容的系統(tǒng)之間交換數(shù)據(jù);可以在網(wǎng)絡中交換金融信息;純文本文件可以用來共享數(shù)據(jù);純文本文件可以用來存儲數(shù)據(jù);你的數(shù)據(jù)可以被更多的用戶使用;可以用于創(chuàng)建新的語言。

  C#筆試題及答案篇3

  1、ASP.net的身份驗證方式有哪些?分別是什么原理?

  Forms身份驗證:要發(fā)出登錄請求,需要在網(wǎng)頁上填寫一個表單并將該表單提交到服務器。服務器在接受該請求之后,將向用戶的本地機器寫一個cookie,在后續(xù)的瀏覽中,瀏覽器每次發(fā)送請求時都會將該cooike送回服務器,這個用戶就可以根據(jù)自己的希望保持身份驗證狀態(tài)。

  Windows身份驗證:登錄頁面將用戶證書發(fā)送到Web服務器(只能是IIS,而不是VWD內(nèi)建的Web服務器)。然后WEB服務器應用程序所運行的虛擬目錄配置的方法處理身份驗證。IIS連接到Windows操作系統(tǒng)和Active Directory(活動目錄)域結(jié)構(gòu)上,這意味著它依賴于存儲在站點外部的用戶配置文件,并使用標準WINDOWS證書登錄到站點。根據(jù)站點的配置情況以及登錄計算機所使用的賬戶,甚至可以不用直接登錄站點,因為當前所使用的WINDOWS證書會自動傳遞到WEB服務器進行身份驗證。這種方式在開發(fā)局域網(wǎng)應用程序時特別有用。

  Passport身份驗證:登錄證書被傳遞到某個Microsoft Passport服務器,這個服務器集中保存了用戶的配置文件。登錄HOTMAIL帳戶使用的就是這種方式。由于可以配置WINDOWS在啟動時登錄一個Passport帳戶,因此在訪問HOTMAIL收件箱時甚至都不需要輸入口令。

  2、進程和線程分別怎么理解?

  應用程序被加載到內(nèi)存中后叫進程。進程被CPU處理時叫線程。通常來說,一個進程可以定義程序的一個實例(Instance)。在Win32中,進程并不執(zhí)行什么,它只是占據(jù)應用程序所使用的地址空間。為了讓進程完成一定的工作,進程必須至少占有一個線程,正是這個線程負責包含進程地址空間中的代碼。實際上,一個進程可以包含幾個線程,它們可以同時執(zhí)行進程地址空間中的代碼。

  3、什么是code-Behind技術(shù)。

  就是代碼隱藏,在ASP.NET中通過ASPX頁面指向CS文件的方法實現(xiàn)顯示邏輯和處理邏輯的分離,這樣有助于web應用程序的創(chuàng)建。比如分工,美工和編程的可以個干各的,不用再像以前asp那樣都代碼和html代碼混在一起,難以維護。

  4、活動目錄的作用。

  Active Directory存儲了有關(guān)網(wǎng)絡對象的信息,并且讓管理員和用戶能夠輕松地查找和使用這些信息。Active Directory使用了一種結(jié)構(gòu)化的數(shù)據(jù)存儲方式,并以此作為基礎對目錄信息進行合乎邏輯的分層組織。其作用:

  信息的安全性大大增強;引入基于策略的管理,使系統(tǒng)的管理更加明朗;具有很強的可擴展性;具有很強的可伸縮性;智能的信息復制能力;與 DNS 集成緊密;與其他目錄服務具有互通性;具有靈活的查詢。

  5、net中讀寫XML的類都歸屬于哪些命名空間?

  System.Xml

3170420