C#面試基礎問題
C#面試基礎問題 收藏
English Version: http://dflying.dflying.net/1/archive/104_c_basic_interview_questions.html
如果你的簡歷上面寫“熟悉/瞭解C#”,那麼你就應該能夠回答下面的這些基礎問題。我將給出自己的簡要答案以供參考。歡迎討論。
如果是“精通”,那麼請參考:http://www.cnblogs.com/dflying/archive/2006/04/01/364458.html
- 傳入某個屬性的set
方法的隱含引數的名稱是什麼?
value,它的型別和屬性所聲名的型別相同。 - 如何在C#
中實現繼承?
在類名後加上一個冒號,再加上基類的名稱。 - C#
支援多重繼承麼?
不支援。可以用介面來實現。 - 被protected
修飾的屬性/
方法在何處可以訪問?
在繼承或間接繼承與這個類的子類中可以訪問。 - 私有成員會被繼承麼?
會,但是不能被訪問。所以看上去他們似乎是不能被繼承的,但實際上確實被繼承了。 - 請描述一下修飾符protected internal
。
被protected internal修飾的屬性/方法只能在它的在同一個程式集(Assembly)中的子類被訪問。 - C#
提供一個預設的無引數建構函式,當我實現了另外一個有一個引數的建構函式時候,還想保留這個無引數的建構函式。這樣我應該寫幾個建構函式?
兩個,一旦你實現了一個建構函式,C#就不會再提供預設的建構函式了,所以需要手動實現那個無引數建構函式。 - C#
中所有物件共同的基類是什麼?
System.Object. - 過載和覆寫有什麼區別?
過載提供了對一個方法簽名的不同引數呼叫的實現。覆寫提供了子類中改變父類方法行為的實現。 - 在方法定義中,virtual
有什麼含意?
被virtual修飾的方法可以被子類覆寫。 - 能夠將非靜態的方法覆寫成靜態方法麼?
不能,覆寫方法的簽名必須與被覆寫方法的簽名保持一致,除了將virtual改為override。 - 可以覆寫私有的虛方法麼?
不可以,甚至子類中無法訪問父類中的私有方法。 - 能夠阻止某一個類被其他類繼承麼?
可以,使用關鍵字sealed。 - 能夠實現允許某個類被繼承,但不允許其中的某個方法被覆寫麼?
可以,標記這個類為public,並標記這個方法為sealed。 - 什麼是抽象類(abstract class
)?
一種不可以被例項化的類。抽象類中一般含有抽象方法,當然也可有具體實現。繼承類只有實現過所有抽象類的抽象方法後才能被例項化。 - 何時必須宣告一個類為抽象類?
當這個類中包含抽象方法時,或是該類並沒有完全實現父類的抽象方法時。 - 介面(interface
)是什麼?
只含有共有抽象方法(public abstract method)的類。這些方法必須在子類中被實現。 - 為什麼不能指定介面中方法的修飾符?
介面中的方法用來定義物件之間通訊的契約,指定介面中的方法為私有或保護沒有意義。他們預設為公有方法。 - 可以繼承多個介面麼?
當然。 - 那麼如果這些介面中有重複的方法名稱呢?
這種情況中你可以決定如何實現。當然需要特別得小心。但是在編譯環節是沒有問題的。 - 介面和抽象類的區別是什麼?
介面中所有方法必須是抽象的,並且不能指定方法的訪問修飾符。抽象類中可以有方法的實現,也可以指定方法的訪問修飾符。 - 如何區別過載方法?
不同的引數型別,不同的引數個數,不同的引數順序。 - const
和readonly
有什麼區別?
const關鍵字用來宣告編譯時常量,readonly用來宣告執行時常量。 - System.String
和System.StringBuilder
有什麼區別?
System.String是不可變的字串。System.StringBuilder存放了一個可變的字串,並提供一些對這個字串修改的方法。
相關文章
- Python基礎面試題30問!Python基礎教程Python面試題
- 面試問題記錄 一 (基礎部分)面試
- 面試題-測試工程師常見的基礎問題面試題工程師
- 面試題:Linux 系統基礎提問 (一)面試題Linux
- java基礎面試題Java面試題
- C# 面試問題與解答1C#面試
- 那些經常被問的JAVA面試題(2)—— 基礎Java面試題
- Java面試之Java基礎問題答案口述整理Java面試
- iOS面試中經常問的點 - 基礎問題(一)iOS面試
- Golang 基礎面試題 01Golang面試題
- Java基礎面試題下Java面試題
- java面試題--基礎上Java面試題
- js面試題(基礎)梳理JS面試題
- go面試題-基礎類Go面試題
- 分享Java面試中的幾個重要基礎問題!Java面試
- C# 面試題C#面試題
- Java面試題-基礎篇一Java面試題
- Java面試題-基礎篇二Java面試題
- iOS 基礎面試題彙總iOS面試題
- Java面試題-基礎篇四Java面試題
- Java面試題-基礎篇五Java面試題
- 前端基礎面試題@JS篇前端面試題JS
- 前端基礎面試題@CSS篇前端面試題CSS
- 面試題之:java基礎1面試題Java
- Java基礎知識面試題Java面試題
- Java面試題基礎篇(一)Java面試題
- Java面試題基礎篇(二)Java面試題
- Java面試題基礎篇(三)Java面試題
- JavaSE-Java基礎面試題Java面試題
- JVM 基礎面試題總結JVM面試題
- Android面試之Java基礎筆試題Android面試Java筆試
- 【搞定 Java 併發面試】面試最常問的 Java 併發基礎常見面試題總結!Java面試題
- 【Java面試】Java面試題基礎系列212道(上)Java面試題
- JS基礎知識(覆蓋JS基礎面試題)JS面試題
- Python面試基礎題小彙總Python面試
- Java基礎面試題整理-50題(附答案)Java面試題
- Gtalent圈子大佬常談的Redis基礎面試問題彙總Redis面試
- Java面試系列:Java面試題基礎系列228道(上)Java面試題
- 2021-PHP面試題大全[PHP基礎]-最近在面試PHP面試題