精品丰满熟女一区二区三区_五月天亚洲欧美综合网_亚洲青青青在线观看_国产一区二区精选

  • <menu id="29e66"></menu>

    <bdo id="29e66"><mark id="29e66"><legend id="29e66"></legend></mark></bdo>

  • <pre id="29e66"><tt id="29e66"><rt id="29e66"></rt></tt></pre>

      <label id="29e66"></label><address id="29e66"><mark id="29e66"><strike id="29e66"></strike></mark></address>
      學習啦 > 創(chuàng)業(yè)指南 > 職場 > 筆試題 > c#經典筆試題

      c#經典筆試題

      時間: 護托1061 分享

      c#經典筆試題

        C#是微軟公司發(fā)布的一種面向對象的、運行于.NET Framework之上的高級程序設計語言。下面就由學習啦小編為大家介紹一下c#經典筆試題的文章,歡迎閱讀。

        c#經典筆試題篇1

        1. c#中錯誤處理機制有哪些

        CLR提供的結構化錯誤處理機制,用try..catch..finally 捕獲

        2. public/protect/private/internal修飾符的區(qū)別

        public:任何類和成員都可以訪問

        protect:該類和派生類能訪問

        private:只能該類訪問

        internal:只能在包含它的程序集中訪問

        3. 大量數據(如3000萬條數據)并發(fā)處理時,有哪幾種機制

        存儲過程或事務.取得最大標識的時候同時更新,注意主鍵不是自增量方式.這種方法并發(fā)的時候是不會重復主鍵的,

        取得最大標識要有一個存儲過程來獲取.

        4. String/StringBuilder的異同

        string是一個不可變的數據類型,一旦對字符串對象進行了初始化,該字符串對象就不能改變了。修改字符串內容的方法

        和運算符實際上是創(chuàng)建一個新的字符串.

        stringbuilder分配好內存,對字符串的修改就在賦予stringbuilder實例的存儲單元中進行.

        舉例:

        string的確是不能修改的:

        string str = "a";

        str = "b"//str是被賦值了"b"沒錯,但是str里面原來的string值"a"并沒有被修改。

        string str = "a";

        string str1 = str;

        str += "b";//此時str = "ab",str1 = "a";

        StringBuilder str = new StringBuilder( "a" );

        StringBuilder str1 = str;

        str.Append( "b" );

        str.ToString()和str1.ToString()都是"ab"。

        5. 解釋string str=null/string str=""

        str=null,聲明而不分內存空間,str=""聲明而分內存空間

        6. 什么是單例模式,寫個運用單例模式的類

        Singleton模式包含的角色只有一個,就是Singleton。Singleton擁有一個私有構造函數,確保用戶無法通過new直接

        實例它

        // Singleton pattern -- Structural example

        using System;

        // "Singleton"

        class Singleton

        {

        // Fields

        private static Singleton instance;

        // Constructor

        protected Singleton() {}

        // Methods

        public static Singleton Instance()

        {

        // Uses "Lazy initialization"

        if( instance == null )

        instance = new Singleton();

        return instance;

        }

        }

        /**////

        /// Client test

        ///

        public class Client

        {

        public static void Main()

        {

        // Constructor is protected -- cannot use new

        Singleton s1 = Singleton.Instance();

        Singleton s2 = Singleton.Instance();

        if( s1 == s2 )

        Console.WriteLine( "The same instance" );

        }

        }

        7. ASP.NET頁面間傳遞有哪幾種方式

        QueryString, response.Redirect(), session, server.Transfer

        8. 解釋重載/覆蓋

        9. Web Services的含義/UDDI的含義

        Web服務是利用SOAP在HTTP上執(zhí)行遠程方法調用的一種新方法。

        UDDI的含義:統(tǒng)一描述發(fā)現和集成(UDDI)提供一種發(fā)布和查找服務描述的方法。

        10.虛函數/抽象函數各自的定義

        虛函數:由virtual聲明,它允許在派生類中被重寫,要重寫方法,必須先聲名為virtual

        public class myclass

        {

        public virtual int myint()

        {

        函數體;

        }

        }

        class myclass1:myclass

        {

        public override int myint()

        {

        函數體1;

        }

        }

        抽象類、抽象函數:由abstract聲明,在抽象類中可以定義抽象方法,抽象方法基本沒有執(zhí)行代碼,派生類必須重寫它,提供其執(zhí)行代碼

        public abstract class myclass

        {

        public abstract int myint();

        }

        public class myclass1:myclass

        {

        public override int myint()

        {

        函數體;

        }

        }

        c#經典筆試題篇2

        1.接口和類的異同

        接口類:由interface聲明,是特殊的抽象類,是方法、屬性、事件和索引符的組合,沒有字段,其成員無執(zhí)行方式,無構造函數,不允許進行運算符重載,接口和它的成員沒有任何訪問修飾符,它總是公共的,不能聲明為虛擬或靜態(tài),繼承自接口的派生類必須實現接口中的所有方法

        interface Imyinterface

        {

        void myfunction();

        string name

        {

        get;

        set;

        }

        }

        class myclass:Imyinterface

        {

        void myfunction()

        {

        函數體;

        }

        string name

        {

        get

        {

        return name;

        }

        set

        {

        name=value;

        }

        }

        }

        接口是負責功能的定義,項目中通過接口來規(guī)范類,操作類以及抽象類的概念!

        而類是負責功能的具體實現!

        在類中也有抽象類的定義,抽象類與接口的區(qū)別在于:

        抽象類是一個不完全的類,類里面有抽象的方法,屬性,也可以有具體的方法和屬性,需要進一步的專業(yè)化。

        但接口是一個行為的規(guī)范,里面的所有東西都是抽象的!

        一個類只可以繼承一個基類也就是父類,但可以實現多個接口

        2.property/assembly區(qū)別

        3.DataReader/DataSet區(qū)別

        dataset表示一個數據集,是數據在內存中的緩存。 可以包括多個表

        DatSet 連接數據庫時是非面向連接的。把表全部讀到Sql中的緩沖池,并斷開于數據庫的連接

        datareader 連接數據庫時是面向連接的。讀表時,只能向前讀取,讀完數據后有用戶決定是否斷開連接。

        4.using/new各自的意義

        using引入名稱空間或者說使用非托管資源new 新建實例或隱藏父類方法

        5.一列數的規(guī)則如下: 1、1、2、3、5、8、13、21、34...... 求第30位數是多少, 用遞歸算法實現

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

        }

        }

        6.C#中的委托是什么?事件是不是一種委托?

        委托可以把一個方法作為參數代入另一個方法。

        委托可以理解為指向一個函數的引用。

        是,是一種特殊的委托

        7.override與重載的區(qū)別

        重載是方法的名稱相同。參數或參數類型不同,進行多次重載以適應不同的需要

        Override 是進行基類中函數的重寫

        8.如果在一個B/S結構的系統(tǒng)中需要傳遞變量值,但是又不能使用Session、Cookie、Application,您有幾種方法進行處理?

        QueryString、FormsAuthentication,Server.Transfer

        9.請編程遍歷頁面上所有TextBox控件并給它賦值為string.Empty?

        foreach (System.Windows.Forms.Control control in this.Controls)

        {

        if (control is System.Windows.Forms.TextBox)

        {

        System.Windows.Forms.TextBox tb = (System.Windows.Forms.TextBox)control ;

        tb.Text = String.Empty ;

        }

        }

        foreach (System.Windows.Forms.Control controlinthis.Controls)

        {

        if (controlis System.Windows.Forms.TextBox)

        {

        System.Windows.Forms.TextBox tb = controlas System.Windows.Forms.TextBox ;

        if(tb!=null)

        {

        tb.Text = String.Empty ;

        }

        }

        }

        10.請編程實現一個冒泡排序算法?

        int [] array = new int [*] ;

        int temp = 0 ;

        for (int i = 0 ; i < array.Length - 1 ; i++)

        {

        for (int j = i + 1 ; j < array.Length ; j++)

        {

        if (array[j] < array[i])

        {

        temp = array[i] ;

        array[i] = array[j] ;

        array[j] = temp ;

        }

        }

        }

        c#經典筆試題篇3

        1.描述一下C#中索引器的實現過程,是否只能根據數字進行索引?

        可以用任意類型

        C#中的索引器通常用于索引數組,樓上的THIS就是索引器了。

        索引器不單能索引數字(數組下標),還能索引一些HASHMAP的字符串,所以,通常來說,C#中類的索引器通常只有一個,就是THIS,但也可以有無數個,只要你的參數列表不同就可以了

        索引器和返回值無關

        class A

        {

        int[] i=new int[10];

        publib int this[int v]

        {

        return i[v];

        }

        2.求以下表達式的值,寫出您想到的一種或幾種實現方法: 1-2+3-4+……+m

        if(m%2 == 1){

        S = (m + 1) / 2;

        } else {

        S = -m / 2;

        }

        int Num = this.TextBox1.Text.ToString() ;

        int Sum = 0 ;

        for (int i = 0 ; i < Num + 1 ; i++)

        {

        if((i%2) == 1)

        {

        Sum += i ;

        }

        else

        {

        Sum = Sum - I ;

        }

        }

        System.Console.WriteLine(Sum.ToString());

        System.Console.ReadLine() ;

        3.

        using System;

        class A

        {

        public A()

        {

        PrintFields();

        }

        public virtual void PrintFields(){}

        }

        class B:A

        {

        int x=1;

        int y;

        public B()

        {

        y=-1;

        }

        public override void PrintFields()

        {

        Console.WriteLine("x={0},y={1}",x,y);

        }

        }

        當使用new B()創(chuàng)建B的實例時,產生什么輸出? X=1,Y=0;x= 1 y = -1

        4..什么叫應用程序域?

        應用程序域可以理解為一種輕量級進程。起到安全的作用。占用資源小。

        5.CTS、CLS、CLR分別作何解釋?

        CTS:通用語言系統(tǒng)。CLS:通用語言規(guī)范。CLR:公共語言運行庫。

        6.什么是裝箱和拆箱?

        從值類型接口轉換到引用類型裝箱。從引用類型轉換到值類型拆箱。

        7.什么是受管制的代碼?

        unsafe:非托管代碼。不經過CLR運行。

        8.什么是強類型系統(tǒng)?

        RTTI:類型識別系統(tǒng)。

        9.在.net中,配件的意思是?

        程序集。(中間語言,源數據,資源,裝配清單)

        10.常用的調用WebService的方法有哪些?

        1.使用WSDL.exe命令行工具。

        2.使用VS.Net中的Add Web Reference菜單選項

      3169989