無為

          無為則可為,無為則至深!

            BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
            190 Posts :: 291 Stories :: 258 Comments :: 0 Trackbacks

          1. new 關(guān)鍵字用法

          (1)new 運(yùn)算符

          用于創(chuàng)建對(duì)象和調(diào)用構(gòu)造函數(shù)。

          (2)new 修飾符

          用于向基類成員隱藏繼承成員。

          (3)new 約束

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

          2. 如何把一個(gè) Array 復(fù)制到 ArrayList

          (1) 實(shí)現(xiàn) 1

          string[] s ={ "111", "22222" };

          ArrayList list = new ArrayList();

          list.AddRange(s);

          (2) 實(shí)現(xiàn) 2

          string[] s ={ "111", "22222" };

          ArrayList list = new ArrayList(s);

          3.DataGrid Datasouse 可以連接什么數(shù)據(jù)源

          l???????? DataTable

          l???????? DataView

          l???????? DataSet

          l???????? DataViewManager

          l???????? 任何實(shí)現(xiàn) IListSource 接口的組件

          l???????? 任何實(shí)現(xiàn) IList 接口的組件

          4. 概述反射和序列化

          反射

          公共語言運(yùn)行庫加載器管理應(yīng)用程序域。這種管理包括將每個(gè)程序集加載到相應(yīng)的應(yīng)用程序域以及控制每個(gè)程序集中類型層次結(jié)構(gòu)的內(nèi)存布局。

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

          序列化

          序列化是將對(duì)象狀態(tài)轉(zhuǎn)換為可保持或傳輸?shù)母袷降倪^程。與序列化相對(duì)的是反序列化,它將流轉(zhuǎn)換為對(duì)象。這兩個(gè)過程結(jié)合起來,可以輕松地存儲(chǔ)和傳輸數(shù)據(jù)。

          5. 概述 O/R Mapping 的原理

          利用反射,配置將對(duì)象和數(shù)據(jù)庫表映射。

          6. 可訪問性級(jí)別有哪幾種

          l???????? public 訪問不受限制。

          l???????? protected 訪問僅限于包含類或從包含類派生的類型。

          l???????? internal 訪問僅限于當(dāng)前程序集。

          l???????? protected internal 訪問僅限于從包含類派生的當(dāng)前程序集或類型。

          l???????? private 訪問僅限于包含類型。

          7. sealed 修飾符有什么特點(diǎn)

          sealed 修飾符可以應(yīng)用于類、實(shí)例方法和屬性。密封類不能被繼承。密封方法會(huì)重寫基類中的方法,但其本身不能在任何派生類中進(jìn)一步重寫。當(dāng)應(yīng)用于方法或?qū)傩詴r(shí), sealed 修飾符必須始終與 override 一起使用。

          8. 列舉 ADO.NET 中的共享類和數(shù)據(jù)庫特定類

          共享類

          DataSet

          DataTable

          DataRow

          DataColumn

          DataRelation

          Constraint

          DataColumnMapping

          DataTableMapping

          特定類

          (x)Connection

          (x)Command

          (x)CommandBuilder

          (x)DataAdapter

          (x)DataReader

          (x)Parameter

          (x)Transaction

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

          String strTemp ="abcdefg 某某某 "

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

          Int j=strTemp.Length;

          問:

          i=?

          j=?

          ?

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

          10.C# 中, string str = null string str ="" ,請(qǐng)盡量用文字說明區(qū)別。

          string str ="" 初始化對(duì)象分配空間

          string str=null 初始化對(duì)象

          11. 詳述 .NET class struct 的異同

          結(jié)構(gòu)與類共享幾乎所有相同的語法,但結(jié)構(gòu)比類受到的限制更多:

          盡管結(jié)構(gòu)的靜態(tài)字段可以初始化,結(jié)構(gòu)實(shí)例字段聲明還是不能使用初始值設(shè)定項(xiàng)。

          結(jié)構(gòu)不能聲明默認(rèn)構(gòu)造函數(shù)(沒有參數(shù)的構(gòu)造函數(shù))或析構(gòu)函數(shù)。

          結(jié)構(gòu)的副本由編譯器自動(dòng)創(chuàng)建和銷毀,因此不需要使用默認(rèn)構(gòu)造函數(shù)和析構(gòu)函數(shù)。實(shí)際上,編譯器通過為所有字段賦予默認(rèn)值(參見默認(rèn)值表)來實(shí)現(xiàn)默認(rèn)構(gòu)造函數(shù)。結(jié)構(gòu)不能從類或其他結(jié)構(gòu)繼承。

          結(jié)構(gòu)是值類型 -- 如果從結(jié)構(gòu)創(chuàng)建一個(gè)對(duì)象并將該對(duì)象賦給某個(gè)變量,變量則包含結(jié)構(gòu)的全部值。復(fù)制包含結(jié)構(gòu)的變量時(shí),將復(fù)制所有數(shù)據(jù),對(duì)新副本所做的任何修改都不會(huì)改變舊副本的數(shù)據(jù)。由于結(jié)構(gòu)不使用引用,因此結(jié)構(gòu)沒有標(biāo)識(shí) -- 具有相同數(shù)據(jù)的兩個(gè)值類型實(shí)例是無法區(qū)分的。 C# 中的所有值類型本質(zhì)上都繼承自 ValueType ,后者繼承自 Object

          編譯器可以在一個(gè)稱為裝箱的過程中將值類型轉(zhuǎn)換為引用類型。

          結(jié)構(gòu)具有以下特點(diǎn):

          l???????? 結(jié)構(gòu)是值類型,而類是引用類型。

          l???????? 向方法傳遞結(jié)構(gòu)時(shí),結(jié)構(gòu)是通過傳值方式傳遞的,而不是作為引用傳遞的。

          l???????? 與類不同,結(jié)構(gòu)的實(shí)例化可以不使用 new 運(yùn)算符。

          l???????? 結(jié)構(gòu)可以聲明構(gòu)造函數(shù),但它們必須帶參數(shù)。

          l???????? 一個(gè)結(jié)構(gòu)不能從另一個(gè)結(jié)構(gòu)或類繼承,而且不能作為一個(gè)類的基。所有結(jié)構(gòu)都直接繼承自 System.ValueType ,后者繼承自 System.Object

          l???????? 結(jié)構(gòu)可以實(shí)現(xiàn)接口。

          l???????? 在結(jié)構(gòu)中初始化實(shí)例字段是錯(cuò)誤的。

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

          應(yīng)用程序域

          應(yīng)用程序域?yàn)榘踩浴⒖煽啃浴姹究刂埔约靶遁d程序集提供了隔離邊界。應(yīng)用程序域通常由運(yùn)行庫宿主創(chuàng)建,運(yùn)行庫宿主負(fù)責(zé)在運(yùn)行應(yīng)用程序之前引導(dǎo)公共語言運(yùn)行庫。應(yīng)用程序域提供了一個(gè)更安全、用途更廣的處理單元,公共語言運(yùn)行庫可使用該單元提供應(yīng)用程序之間的隔離。

          托管代碼

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

          裝箱和拆箱

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

          重載

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

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

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

          CLR 公共語言運(yùn)行庫

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

          CLS 公共語言規(guī)范

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

          強(qiáng)類型

          C# 是強(qiáng)類型語言;因此每個(gè)變量和對(duì)象都必須具有聲明類型。

          13. 值類型和引用類型的區(qū)別?

          基于值類型的變量直接包含值。將一個(gè)值類型變量賦給另一個(gè)值類型變量時(shí),將復(fù)制包含的值。這與引用類型變量的賦值不同,引用類型變量的賦值只復(fù)制對(duì)對(duì)象的引用,而不復(fù)制對(duì)象本身。

          所有的值類型均隱式派生自 System.ValueType

          與引用類型不同,從值類型不可能派生出新的類型。但與引用類型相同的是,結(jié)構(gòu)也可以實(shí)現(xiàn)接口。

          與引用類型不同,值類型不可能包含 null 值。然而,可空類型功能允許將 null 賦給值類型。

          每種值類型均有一個(gè)隱式的默認(rèn)構(gòu)造函數(shù)來初始化該類型的默認(rèn)值。

          值類型主要由兩類組成:結(jié)構(gòu)、枚舉

          結(jié)構(gòu)分為以下幾類: Numeric (數(shù)值)類型、整型、浮點(diǎn)型、 decimal bool 、用戶定義的結(jié)構(gòu)。

          引用類型的變量又稱為對(duì)象,可存儲(chǔ)對(duì)實(shí)際數(shù)據(jù)的引用。聲明引用類型的關(guān)鍵字: class interface delegate 、內(nèi)置引用類型: object string

          14. 如何理解委托

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

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

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

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

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

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

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

          異:

          不能直接實(shí)例化接口。

          接口不包含方法的實(shí)現(xiàn)。

          接口、類和結(jié)構(gòu)可從多個(gè)接口繼承。但是 C# 只支持單繼承:類只能從一個(gè)基類繼承實(shí)現(xiàn)。

          類定義可在不同的源文件之間進(jìn)行拆分。

          同:

          接口、類和結(jié)構(gòu)可從多個(gè)接口繼承。

          接口類似于抽象基類:繼承接口的任何非抽象類型都必須實(shí)現(xiàn)接口的所有成員。

          接口可以包含事件、索引器、方法和屬性。

          一個(gè)類可以實(shí)現(xiàn)多個(gè)接口。

          16.ASP.net 的身份驗(yàn)證方式有哪些

          Windows 身份驗(yàn)證提供程序

          提供有關(guān)如何將 Windows 身份驗(yàn)證與 Microsoft Internet 信息服務(wù) (IIS) 身份驗(yàn)證結(jié)合使用來確保 ASP.NET 應(yīng)用程序安全的信息。

          Forms 身份驗(yàn)證提供程序

          提供有關(guān)如何使用您自己的代碼創(chuàng)建應(yīng)用程序特定的登錄窗體并執(zhí)行身份驗(yàn)證的信息。使用 Forms 身份驗(yàn)證的一種簡(jiǎn)便方法是使用 ASP.NET 成員資格和 ASP.NET 登錄控件,它們一起提供了一種只需少量或無需代碼就可以收集、驗(yàn)證和管理用戶憑據(jù)的方法。

          Passport 身份驗(yàn)證提供程序

          提供有關(guān)由 Microsoft 提供的集中身份驗(yàn)證服務(wù)的信息,該服務(wù)為成員站點(diǎn)提供單一登錄和核心配置

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

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

          18. 解釋一下 UDDI WSDL 的意義及其作用

          UDDI

          統(tǒng)一描述、發(fā)現(xiàn)和集成協(xié)議 (UDDI, Universal Description, Discovery and Integration) 是一套基于 Web 的、分布式的、為 Web 服務(wù)提供的信息注冊(cè)中心的實(shí)現(xiàn)標(biāo)準(zhǔn)規(guī)范,同時(shí)也包含一組使企業(yè)能將自身提供的 Web 服務(wù)注冊(cè)以使得別的企業(yè)能夠發(fā)現(xiàn)的訪問協(xié)議的實(shí)現(xiàn)標(biāo)準(zhǔn)。 UDDI 提供了一組基于標(biāo)準(zhǔn)的規(guī)范用于描述和發(fā)現(xiàn)服務(wù),還提供了一組基于因特網(wǎng)的實(shí)現(xiàn)。

          WSDL

          WSDL 描述 Web 服務(wù)的公共接口。這是一個(gè)基于 XML 的關(guān)于如何與 Web 服務(wù)通訊和使用的服務(wù)描述;

          l???????? 服務(wù) URL 和命名空間

          l???????? 網(wǎng)絡(luò)服務(wù)的類型(可能還包括 SOAP 的函數(shù)調(diào)用,正像我所說過的, WSDL 足夠自如地去描述網(wǎng)絡(luò)服務(wù)的廣泛內(nèi)容)

          l???????? 有效函數(shù)列表

          l???????? 每個(gè)函數(shù)的參數(shù)

          l???????? 每個(gè)參數(shù)的類型

          l???????? 每個(gè)函數(shù)的返回值及其數(shù)據(jù)類型

          19. 什么是 SOAP

          SOAP Simple Object Access Protocol )簡(jiǎn)單對(duì)象訪問協(xié)議是在分散或分布式的環(huán)境中交換信息并執(zhí)行遠(yuǎn)程過程調(diào)用的協(xié)議,是一個(gè)基于 XML 的協(xié)議。使用 SOAP ,不用考慮任何特定的傳輸協(xié)議(最常用的還是 HTTP 協(xié)議),可以允許任何類型的對(duì)象或代碼,在任何平臺(tái)上,以任何一直語言相互通信。

          SOAP 是一種輕量級(jí)協(xié)議,用于在分散型、分布式環(huán)境中交換結(jié)構(gòu)化信息。 SOAP 利用 XML 技術(shù)定義一種可擴(kuò)展的消息處理框架,它提供了一種可通過多種底層協(xié)議進(jìn)行交換的消息結(jié)構(gòu)。 這種框架的設(shè)計(jì)思想是要獨(dú)立于任何一種特定的編程模型和其他特定實(shí)現(xiàn)的語義。

          SOAP 定義了一種方法以便將 XML 消息從 A 點(diǎn)傳送到 B 點(diǎn)。 為此,它提供了一種基于 XML 且具有以下特性的消息處理框架: 1) 可擴(kuò)展, 2) 可通過多種底層網(wǎng)絡(luò)協(xié)議使用, 3) 獨(dú)立于編程模型。

          20. 如何部署一個(gè) ASP.net 頁面

          VS 2005 VS 2003 都有發(fā)布機(jī)制。 2003 可以發(fā)布然后再復(fù)制部署。

          VS2005 基本上可以直接部署到對(duì)應(yīng)位置。

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

          .NET Framework 的垃圾回收器管理應(yīng)用程序的內(nèi)存分配和釋放。每次您使用 new 運(yùn)算符創(chuàng)建對(duì)象時(shí),運(yùn)行庫都從托管堆為該對(duì)象分配內(nèi)存。只要托管堆中有地址空間可用,運(yùn)行庫就會(huì)繼續(xù)為新對(duì)象分配空間。但是,內(nèi)存不是無限大的。最終,垃圾回收器必須執(zhí)行回收以釋放一些內(nèi)存。垃圾回收器優(yōu)化引擎根據(jù)正在進(jìn)行的分配情況確定執(zhí)行回收的最佳時(shí)間。當(dāng)垃圾回收器執(zhí)行回收時(shí),它檢查托管堆中不再被應(yīng)用程序使用的對(duì)象并執(zhí)行必要的操作來回收它們占用的內(nèi)存。



          凡是有該標(biāo)志的文章,都是該blog博主Caoer(草兒)原創(chuàng),凡是索引、收藏
          、轉(zhuǎn)載請(qǐng)注明來處和原文作者。非常感謝。

          posted on 2006-06-10 13:23 草兒 閱讀(263) 評(píng)論(0)  編輯  收藏 所屬分類: C#+XML
          主站蜘蛛池模板: 宽甸| 南召县| 曲周县| 垣曲县| 乌海市| 石嘴山市| 平和县| 大洼县| 上蔡县| 霞浦县| 芜湖市| 大竹县| 江西省| 库尔勒市| 无锡市| 朝阳市| 罗定市| 高要市| 拜泉县| 大关县| 通州区| 韶山市| 闸北区| 建阳市| 新津县| 凤城市| 峡江县| 海淀区| 汤原县| 琼海市| 西平县| 滨州市| 吉木萨尔县| 双柏县| 积石山| 普宁市| 阳东县| 潮安县| 武冈市| 广东省| 肇庆市|