• c#面試問題及答案

    時間:2022-06-24 14:29:18 面試 我要投稿
    • 相關推薦

    c#面試問題及答案

      面試除了基本信息之外還會問一些與崗位相關的問題,接下來是小編給大家搜集的c#面試問題及答案,希望幫助到大家!

    c#面試問題及答案

      1、什么是裝箱和拆箱?

      答:裝箱就是把值類型轉成引用類型:裝箱就是把值類型(包括int與結構這樣的內置類型)轉換為object類型,拆箱就是把引用類型轉換為值類型,裝箱與拆箱實現了兩種類型的互換。

      2、對象和類的區別是什么?

      答:“類”(Class)具有相同屬性和方法的一組對象的集合 . 類是抽象的概念,僅僅是模板對象是一個你能夠看得到、摸得著的具體實體

      3、什么是類的方法?

      答:類是由一組具有相同屬性和共同行為的實體抽象而來,對象執行的操作通過編寫類的方法來實現?梢,類的方法是一個功能模塊,作用是“做一件事”。

      4、什么是局部變量,什么是成員變量?

      答:局部變量是指一個方法中定義的變量;成員變量是指在類范圍里定義的變量,也就是之前講過的屬性。

      5、靜態成員和實例成員的區別?

      答:使用static修飾的成員稱為靜態成員,使用實例對象調用的成員稱為實例成員

      6、概述序列化

      答: 序列化是將對象的狀態存儲到特定存儲介質中的過程。反序列化則是從特定存儲介質中的數據重新構建對象的過程

      7、類成員有幾種可訪問形式?簡述可訪問形式修飾符的訪問權限。

      答:可訪問形式有 private、 protected、 public、 internal;

      public(公共的) 完全公開,訪問不受限制。

      protected(保護的) 訪問僅限于包含類或從包含類派生的類型。該類內部和繼承類中可以訪問。

      internal(內部的) 訪問僅限于當前程序集。在同一命名空間內可以訪問。

      protected internal(內部保護的) 訪問僅限于從包含類派生的當前程序集或類型。

      private(私有的) 訪問僅限于包含類型。在類的內部才可以訪問。

      8、繼承的特點有哪些?

      答:C# 繼承通過 : 關鍵字來實現,實現繼承的類被稱為子類,被繼承的類被稱為父類,有的也稱為基類、超類。父類和子類的關系是is-a的關系,即子類is-a父類。

      9、傳入某個屬性的set方法的隱含參數的名稱是什么?

      答: 隱含參數的名稱是value,它的類型和屬性所聲名的類型相同。

      10、如何在C#中實現繼承?

      答: 在類名后加上一個冒號,再加上基類的名稱。

      11、對象能否調用靜態方法 ?

      答:不能。對于類內部定義的靜態變量及靜態方法,該類的對象均不能調用。

      12、C#支持多重繼承么?

      答:類之間不支持多重繼承,接口之間支持。類對接口叫做實現,不叫繼承。

      13、被protected修飾的屬性/方法在何處可以訪問?

      答:在繼承或間接繼承與這個類的子類中可以訪問。

      14、私有成員會被繼承么?

      答:會,但是不能被訪問。所以看上去他們似乎是不能被繼承的,但實際上確實被繼承了。

      15、接口和抽象類具有什么區別?

      答:含有abstract修飾符的class即為抽象類,abstract 類不能創建的實例對象。含有abstract方法的類必須定義為abstract class,abstract class類中的方法不必是抽象的。abstract class類中定義抽象方法必須在具體子類中實現,所以,不能有抽象構造方法或抽象靜態方法。如果的子類沒有實現抽象父類中的所有抽象方法,那么子類也必須定義為abstract類型。

      接口(interface)可以說成是抽象類的一種特例,接口中的所有方法都必須是抽象的。接口中的方法定義默認為public abstract類型

      下面比較一下兩者的語法區別:

      抽象類可以有構造方法,接口中不能有構造方法。

      抽象類中可以包含非抽象的普通方法,接口中的所有方法必須都是抽象的,不能有非抽象的普通方法。

      抽象類中抽象方法可以指定為public,接口中抽象方法不能指定任何修飾符,默認就是public

      一個類可以實現多個接口,但只能繼承一個抽象類。

      16、C#中所有對象共同的基類是什么?

      答:System.Object.

      17、在方法定義中,virtual有什么含意?

      答:被virtual修飾的方法可以被子類覆寫。

      18、能夠將非靜態的方法覆寫成靜態方法么?

      答:不能,覆寫方法的簽名必須與被覆寫方法的簽名保持一致,除了將virtual改為override。答案并沒有大錯,只是靜態方法根本無override概念,屬于引起困惑的問題 。

      19、可以覆寫私有的虛方法么?

      答:不可以,甚至子類中無法訪問父類中的私有方法。

      20、能夠阻止某一個類被其他類繼承么?

      答:可以,使用關鍵字sealed。 還可以將所有構造函數的訪問級別都設為Private或子類無法訪問到的其他級別(Assembly外的iternal),也有同樣的效果。

    【c#面試問題及答案】相關文章:

    經典面試的問題及答案06-27

    面試的經典問題及答案06-25

    面試經典問題及答案07-02

    面試問題答案07-11

    面試護士問題及答案07-13

    面試問題及答案07-11

    客服面試的問題及答案06-25

    面試問題及答案06-09

    面試遇到的問題及答案06-25

    面試美容的問題答案06-25

    黄频国产免费高清视频_富二代精品短视频在线_免费一级无码婬片aa_精品9E精品视频在线观看