面试题及答案_NET
| 答案 | 1)??????? 概述:自定義控件也是asp.net的一種服務器控件,體現格式為*.dll 2)??????? 適用場合:當.net平臺給我們提供的web服務器控件不夠用的時候,就需要我們自己開發一個自定義控件,或者又稱為第三方控件;可以把該種控件添加到工具箱中,然后就像使用Web服務器控件一樣。例如:分頁控件 3)??????? 在控件內部公開屬性,通過給屬性賦值進行數據的交互; 控件最終體現在界面上的樣式是靠重寫父類的Render方法來實現的 |
| 答案 | 1)DataSet:數據集,用于緩存從數據庫中取到的數據,可以提供數據庫的訪問速度。 2)Connection:連接對象,用于應用程序與數據進行連接。 3)TreeView:樹形控件,主要用于向樹一樣顯示數據 |
| 答案 | ? 異常處理有兩種方法:一種是使用Try Catch處理,一種使用throw扔出 |
| 答案 | 1)表現層? 顯示數據和接受輸入 ?? 2)業務邏輯層? 用于進行業務數據的處理 ?? 3)數據訪問層? 用于訪問數據 ?? 4)實體層? 用于控制數據傳遞對象 |
| 答案 | Using System.Net.Sockets; //啟動監聽 TcpListener objLsn = new TcpListener(1000); objLsn.Start(); Socket objSocket = objLsn.AcceptSocket(); //發送 String msg = “測試發送”; Byte[] arr = System.Text.Encoding.Default.GetBytes(msg); objSocket.Send(arr); 參考:WinForm第八章Socket編程 |
| 答案 | 1)??????? 不對 2)??????? List為泛型集合, List<T> list = new List<T>(); 3)??????? 例: List<string> list = new List<string>(); |
| 答案 | 委托是一種傳遞消息的機制,可以將方法作為參數傳遞 事件是一種特殊的委托 |
| 答案 | IEnumerable接口??? IEnumerator GetEnumerator() |
| 答案 | ?: |
| 答案 | Garbage Collection 垃圾回收器 |
| 答案 | ASP.NET Web 服務的基礎結構是通過將SOAP消息映射到Web方法調用,為Web服務提供了簡單的API。通過提供一種非常簡單的編程模型 (基于將 SOAP 消息交換映射到方法調用),它實現了此機制。ASP.NET Web 服務的客戶端不需要了解用于創建它們的平臺、對象模型或編程語言。而服務也不需要了解向它們發送消息的客戶端。唯一的要求是:雙方都要認可正在創建和使用的 SOAP 消息的格式,該格式是由使用 WSDL 和 XML 架構 (XSD) 表示的 Web 服務合約定義來定義的。 .NET Remoting 為分布式對象提供了一個基礎結構。它使用既靈活又可擴展的管線向遠程進程提供 .NET 的完全對象語義。ASP.NET Web 服務基于消息傳遞提供非常簡單的編程模型,而 .NET Remoting 提供較為復雜的功能,包括支持通過值或引用傳遞對象、回調,以及多對象激活和生命周期管理策略等。要使用 .NET Remoting,客戶端需要了解所有這些詳細信息,簡而言之,需要使用 .NET 建立客戶端。(或者使用支持 .NET Remoting 的其他框架)。 |
| 答案 | 類和結構都可以有字段、屬性和方法 類的引用類型,結構是值類型 類可以被繼承,結構不可以被繼承 |
| 答案 | 建立.NET 遠程客戶端,實現遠端進程通訊服務。 |
| 答案 | 手動建立Web服務代理, 利用開發環境建立Web服務代理 |
| 答案 | SqlConnection 連接數據庫 SqlCommand 執行Sql語句或存儲過程 SqlDataReader 實現對數據表記錄向前只讀 SqlDataAapter 執行Sql語句或存儲過程 |
| 答案 | Windows身份驗證,基于Windows系統的用戶的認證 Forms身份驗證,基于Form表單的認證 |
| 答案 | 強類型系統是相對于弱類型而言的,系統設計時盡量把對弱類型數據的操作映射為對強類型對象的操作,增強系統的健壯性。 |
| 答案 | 的.NET Framework框架下運行的代碼都是托管代碼 |
| 答案 | 裝箱:將值類型的數據轉化為引用類型的數據 拆箱:將引用類型數據轉化為值類型 |
| 答案 | CTS 公共類型系統, CLS 公共語言規范, CLR公共語言運行時? |
| 答案 | DataSet提供一個內存中數據的關系表示形式,一整套包括一些表在內的數據(這些表包含數據、對數據進行排序并約束數據),以及表之間的關系。DataReader提供一個來自數據庫的快速、僅向前、只讀數據流。 ADO.NET提供以下兩個對象,用于檢索關系數據并將其存儲在內存中:DataSet和DataReader。DataSet提供一個內存中數據的關系表示形式,一整套包括一些表在內的數據(這些表包含數據、對數據進行排序并約束數據),以及表之間的關系。DataReader提供一個來自數據庫的快速、僅向前、只讀數據流。 |
| 答案 | 委托實際上是類(一個貌似函數一樣的類),我們已經使用函數指針很多年了——函數指針也被稱為過程類型,但是它們的實現都不是類。它們是單獨的函數指針的簡單實例。委托是包含這些功能的類,委托類通過保留的列表來確定某些事物是否已經指派給了委托,這種算法可以理解為:“對于內部列表中的每一個回調函數,都調用函數”。委托除了支持回調函數外,還可以通過該列表來實現多播(委托鏈)。 |
| 答案 | 字面意思就是:代碼在后面,也就是代碼隱藏的意思。 主要是通過aspx頁面指向對應的CS文件,可以實現顯示邏輯和處理邏輯的分離,這樣做有別于以前的asp頁面和代碼全混在一起不容易后期的修改和維護,使用code behind更容易維護,美工和程序員可以很好的分工 |
| 答案 | System.Xml命名空間包含了一些最重要的XML類,其中最主要的類是和XML文檔的讀寫操作相關的類。這些類中包括4個與讀相關的類以及2個與寫相關的類。它們分別是:XmlReader、XmlTextReader、XmlValidatingReader、XmlNodeReader、XmlWriter以及 XmlTextWriter。 System.Xml命名空間包含了一些最重要的XML類,其中最主要的類是和XML文檔的讀寫操作相關的類。這些類中包括4個與讀相關的類以及2個與寫相關的類。它們分別是:XmlReader、XmlTextReader、XmlValidatingReader、XmlNodeReader、XmlWriter以及 XmlTextWriter。 XmlReader類是一個虛基類,它包含了讀XML文檔的方法和屬性。該類中的Read方法是一個基本的讀XML文檔的方法,它以流形式讀取XML文檔中的節點(Node)。另外,該類還提供了ReadString、ReadInnerXml、ReadOuterXml和ReadStartElement等更高級的讀方法。除了提供讀XML文檔的方法外,XmlReader類還為程序員提供了MoveToAttribute、MoveToFirstAttribute、MoveToContent、MoveToFirstContent、MoveToElement以及 MoveToNextAttribute等具有導航功能的方法。 XmlTextReader、XmlNodeReader以及XmlValidatingReader等類是從XmlReader類繼承過來的子類。根據它們的名稱,我們可以知道其作用分別是讀取文本內容、讀取節點和讀取XML模式(Schemas)。 XmlWriter類為程序員提供了許多寫XML文檔的方法,它是XmlTextWriter類的基類,我在后面的實例中會給出相關的運用方法。 XmlNode類是一個非常重要的類,它代表了XML文檔中的某個節點。該節點可以是XML文檔的根節點,這樣它就代表整個XML文檔了。它是許多很有用的類的基類,這些類包括插入節點的類、刪除節點的類、替換節點的類以及在XML文檔中完成導航功能的類。同時,XmlNode類還為程序員提供了獲取雙親節點、子節點、最后一個子節點、節點名稱以及節點類型等的屬性。它的三個最主要的子類包括:XmlDocument、XmlDataDocument以及XmlDocumentFragment。XmlDocument類代表了一個XML文檔,它提供了載入和保存XML文檔的方法和屬性。這些方法包括了Load、LoadXml和Save等。同時,它還提供了添加特性(Attributes)、說明(Comments)、空間(Spaces)、元素(Elements)和新節點(New Nodes)等XML項的功能。XmlDocumentFragment類代表了一部分XML文檔,它能被用來添加到其他的XML文檔中。XmlDataDocument類可以讓程序員更好地完成和ADO.NET中的數據集對象之間的互操作。 |
| 答案 | //自己寫一個異常處理基類(從System.ApplicationException繼承而來),三層里出現的所有的異常都用自己的異常處理類來處理 ? |
| 答案 |
| 答案 | .NET運行庫采用的方法是垃圾收集器。 這是一個程序,其目的是清理內存,方法是所有動態請求的內存都分配到堆上(這對所有的語言都一樣,但在.NET中,CLR維護它自己的托管堆,以供.NET應用程序使用),當.NET檢測到給定進程的托管堆已滿,需要清理時,就調用垃圾收集器。垃圾收集器處理目前代碼中的所有變量,檢查對存儲在托管堆上的對象的引用,確定哪些對象可以從代碼中訪問—— 即哪些對象有引用。沒有引用的對象就不能再從代碼中訪問,因而被刪除。 |
總結
以上是生活随笔為你收集整理的面试题及答案_NET的全部內容,希望文章能夠幫你解決所遇到的問題。