熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

.NET程序員面試的題一部

2022-06-13   來源: .NET編程 

   new 關鍵字用法

  ()new 運算符 用於創建對象和調用構造函數

  ()new 修飾符 用於向基類成員隱藏繼承成員

  ()new 約束 用於在泛型聲明中約束可能用作類型參數的參數的類型

  如何把一個Array復制到ArrayList裡

  () 實現 string[] s ={ }; ArrayList list = new ArrayList(); listAddRange(s);

  ()實現 string[] s ={ }; ArrayList list = new ArrayList(s);

  DataGrid的Datasouse可以連接什麼數據源

  DataTable

  DataView

  DataSet

  DataViewManager

  任何實現IListSource接口的組件

  任何實現IList接口的組件

  概述反射和序列化反射公共語言運行庫加載器管理應用程序域

  這種管理包括將每個程序集加載到相應的應用程序域以及控制每個程序集中類型層次結構的內存布局程序集包含模塊而模塊包含類型類型又包含成員反射則提供了封裝程序集模塊和類型的對象您可以使用反射動態地創建類型的實例將類型綁定到現有對象或從現有對象中獲取類型然後可以調用類型的方法或訪問其字段和屬性序列化序列化是將對象狀態轉換為可保持或傳輸的格式的過程與序列化相對的是反序列化它將流轉換為對象這兩個過程結合起來可以輕松地存儲和傳輸數據

  概述O/R Mapping 的原理利用反射配置將對象和數據庫表映射

   可訪問性級別有哪幾種

  public 訪問不受限制

  protected 訪問僅限於包含類或從包含類派生的類型

  internal 訪問僅限於當前程序集

  protected internal 訪問僅限於從包含類派生的當前程序集或類型

  private 訪問僅限於包含類型

   sealed 修飾符有什麼特點

  sealed 修飾符可以應用於類實例方法和屬性密封類不能被繼承密封方法會重寫基類中的方法但其本身不能在任何派生類中進一步重寫當應用於方法或屬性時sealed 修飾符必須始終與 override一起使用

  列舉ADONET中的共享類和數據庫特定類共享類

  DataSet

  DataTable

  DataRow

  DataColumn

  DataRelation

  Constraint

  DataColumnMapping

  DataTableMapping

  特定類

  (x)Connection

  (x)Command

  (x)CommandBuilder

  (x)DataAdapter

  (x)DataReader

  (x)Parameter

  (x)Transaction

  執行下面代碼後

  String strTemp =abcdefg 某某某

  問 i=? j=?

  i=( ) j=( ) 中文兩個字節

  C#中string str = null 與 string str =請盡量用文字說明區別

  string str =初始化對象分配空間而string str=null初始化對象

  詳述NET裡class和struct的異同

  結構與類共享幾乎所有相同的語法但結構比類受到的限制更多盡管結構的靜態字段可以初始化結構實例字段聲明還是不能使用初始值設定項結構不能聲明默認構造函數(沒有參數的構造函數)或析構函數結構的副本由編譯器自動創建和銷毀因此不需要使用默認構造函數和析構函數實際上編譯器通過為所有字段賦予默認值(參見默認值表)來實現默認構造函數結構不能從類或其他結構繼承結構是值類型 如果從結構創建一個對象並將該對象賦給某個變量變量則包含結構的全部值復制包含結構的變量時將復制所有數據對新副本所做的任何修改都不會改變舊副本的數據由於結構不使用引用因此結構沒有標識 具有相同數據的兩個值類型實例是無法區分的C# 中的所有值類型本質上都繼承自 ValueType後者繼承自 Object編譯器可以在一個稱為裝箱的過程中將值類型轉換為引用類型

  結構具有以下特點

  結構是值類型而類是引用類型

  向方法傳遞結構時結構是通過傳值方式傳遞的而不是作為引用傳遞的

  與類不同結構的實例化可以不使用 new 運算符

  結構可以聲明構造函數但它們必須帶參數

  一個結構不能從另一個結構或類繼承而且不能作為一個類的基所有結構都直接繼承自 SystemValueType後者繼承自 SystemObject

  結構可以實現接口

  在結構中初始化實例字段是錯誤的

  什麼叫應用程序域?什麼是托管代碼?什麼是強類型系統?什麼是裝箱和拆箱?什麼是重載?CTSCLS和CLR分別作何解釋?

  應用程序域應用程序域為安全性可靠性版本控制以及卸載程序集提供了隔離邊界應用程序域通常由運行庫宿主創建運行庫宿主負責在運行應用程序之前引導公共語言運行庫應用程序域提供了一個更安全用途更廣的處理單元公共語言運行庫可使用該單元提供應用程序之間的隔離托管代碼使用基於公共語言運行庫的語言編譯器開發的代碼稱為托管代碼托管代碼具有許多優點例如跨語言集成跨語言異常處理增強的安全性版本控制和部署支持簡化的組件交互模型調試和分析服務等裝箱和拆箱裝箱和拆箱使值類型能夠被視為對象對值類型裝箱將把該值類型打包到 Object 引用類型的一個實例中這使得值類型可以存儲於垃圾回收堆中拆箱將從對象中提取值類型重載每個類型成員都有一個唯一的簽名方法簽名由方法名稱和一個參數列表(方法的參數的順序和類型)組成只要簽名不同就可以在一種類型內定義具有相同名稱的多種方法當定義兩種或多種具有相同名稱的方法時就稱作重載 CTS通用類型系統 (common type system) 一種確定公共語言運行庫如何定義使用和管理類型的規范 CLR公共語言運行庫 NET Framework 提供了一個稱為公共語言運行庫的運行時環境它運行代碼並提供使開發過程更輕松的服務 CLS公共語言規范要和其他對象完全交互而不管這些對象是以何種語言實現的對象必須只向調用方公開那些它們必須與之互用的所有語言的通用功能為此定義了公共語言規范 (CLS)它是許多應用程序所需的一套基本語言功能強類型 C# 是強類型語言因此每個變量和對象都必須具有聲明類型

  值類型和引用類型的區別? 基於值類型的變量直接包含值將一個值類型變量賦給另一個值類型變量時將復制包含的值這與引用類型變量的賦值不同引用類型變量的賦值只復制對對象的引用而不復制對象本身所有的值類型均隱式派生自 SystemValueType與引用類型不同從值類型不可能派生出新的類型但與引用類型相同的是結構也可以實現接口與引用類型不同值類型不可能包含 null 值然而可空類型功能允許將 null 賦給值類型 每種值類型均有一個隱式的默認構造函數來初始化該類型的默認值值類型主要由兩類組成結構枚舉結構分為以下幾類Numeric(數值)類型整型浮點型decimalbool用戶定義的結構引用類型的變量又稱為對象可存儲對實際數據的引用聲明引用類型的關鍵字classinterfacedelegate內置引用類型 objectstring

  如何理解委托委托類似於 C++ 函數指針但它是類型安全的委托允許將方法作為參數進行傳遞委托可用於定義回調方法委托可以鏈接在一起例如可以對一個事件調用多個方法方法不需要與委托簽名精確匹配有關更多信息請參見協變和逆變 C# 版引入了匿名方法的概念此類方法允許將代碼塊作為參數傳遞以代替單獨定義的方法

  C#中的接口和類有什麼異同不能直接實例化接口接口不包含方法的實現接口類和結構可從多個接口繼承但是C# 只支持單繼承類只能從一個基類繼承實現類定義可在不同的源文件之間進行拆分接口類和結構可從多個接口繼承接口類似於抽象基類繼承接口的任何非抽象類型都必須實現接口的所有成員接口可以包含事件索引器方法和屬性一個類可以實現多個接口

  的身份驗證方式有哪些 Windows 身份驗證提供程序提供有關如何將 Windows 身份驗證與 Microsoft Internet 信息服務 (IIS) 身份驗證結合使用來確保 ASPNET 應用程序安全的信息 Forms 身份驗證提供程序 提供有關如何使用您自己的代碼創建應用程序特定的登錄窗體並執行身份驗證的信息使用 Forms 身份驗證的一種簡便方法是使用 ASPNET 成員資格和 ASPNET 登錄控件它們一起提供了一種只需少量或無需代碼就可以收集驗證和管理用戶憑據的方法 Passport 身份驗證提供程序 提供有關由 Microsoft 提供的集中身份驗證服務的信息該服務為成員站點提供單一登錄和核心配置

  活動目錄的作用 Active Directory存儲了有關網絡對象的信息並且讓管理員和用戶能夠輕松地查找和使用這些信息Active Directory使用了一種結構化的數據存儲方式並以此作為基礎對目錄信息進行合乎邏輯的分層組織

  解釋一下UDDIWSDL的意義及其作用 UDDI 統一描述發現和集成協議(UDDI Universal Description Discovery and Integration)是一套基於Web的分布式的為Web服務提供的信息注冊中心的實現標准規范同時也包含一組使企業能將自身提供的Web服務注冊以使得別的企業能夠發現的訪問協議的實現標准UDDI 提供了一組基於標准的規范用於描述和發現服務還提供了一組基於因特網的實現 WSDL WSDL描述Web服務的公共接口這是一個基於XML的關於如何與Web服務通訊和使用的服務描述 l         服務 URL 和命名空間 l         網絡服務的類型(可能還包括 SOAP 的函數調用正像我所說過的WSDL 足夠自如地去描述網絡服務的廣泛內容) l         有效函數列表 l         每個函數的參數 l         每個參數的類型 l         每個函數的返回值及其數據類型

  什麼是SOAP SOAP(Simple Object Access Protocol )簡單對象訪問協議是在分散或分布式的環境中交換信息並執行遠程過程調用的協議是一個基於XML的協議使用SOAP不用考慮任何特定的傳輸協議(最常用的還是HTTP協議)可以允許任何類型的對象或代碼在任何平台上以任何一直語言相互通信 SOAP 是一種輕量級協議用於在分散型分布式環境中交換結構化信息 SOAP 利用 XML 技術定義一種可擴展的消息處理框架它提供了一種可通過多種底層協議進行交換的消息結構 這種框架的設計思想是要獨立於任何一種特定的編程模型和其他特定實現的語義 SOAP 定義了一種方法以便將 XML 消息從 A 點傳送到 B 點 為此它提供了一種基於 XML 且具有以下特性的消息處理框架) 可擴展) 可通過多種底層網絡協議使用) 獨立於編程模型

  如何部署一個頁面 VS 和VS 都有發布機制可以發布然後再復制部署 VS基本上可以直接部署到對應位置

  如何理中的垃圾回收機制 NET Framework 的垃圾回收器管理應用程序的內存分配和釋放每次您使用 new 運算符創建對象時運行庫都從托管堆為該對象分配內存只要托管堆中有地址空間可用運行庫就會繼續為新對象分配空間但是內存不是無限大的最終垃圾回收器必須執行回收以釋放一些內存垃圾回收器優化引擎根據正在進行的分配情況確定執行回收的最佳時間當垃圾回收器執行回收時它檢查托管堆中不再被應用程序使用的對象並執行必要的操作來回收它們占用的內存

  Int i=SystemTextEncodingDefaultGetBytes(strTemp)Length;

  Int j=strTempLength;


From:http://tw.wingwit.com/Article/program/net/201311/12762.html
    推薦文章
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.