Visual C#程序員面試問題及答案
如果你的簡歷上面寫“熟悉/了解C#”,那么你就應該能夠回答下面的這些基礎問題,
Visual C#程序員面試問題及答案
。我將給出自己的簡要答案以供參考。歡迎討論。傳入某個屬性的set方法的隱含參數(shù)的名稱是什么?
value,它的類型和屬性所聲名的類型相同。
如何在C#中實現(xiàn)繼承?
在類名后加上一個冒號,再加上基類的名稱。
C#支持多重繼承么?
不支持。可以用接口來實現(xiàn)。
被protected修飾的屬性/方法在何處可以訪問?
在繼承或間接繼承與這個類的子類中可以訪問。
私有成員會被繼承么?
會,但是不能被訪問。所以看上去他們似乎是不能被繼承的,但實際上確實被繼承了。
請描述一下修飾符protected internal。
被protected internal修飾的屬性/方法只能在它的在同一個程序集(Assembly)中的'子類被訪問,
資料共享平臺
《Visual C#程序員面試問題及答案》(http://www.ishadingyu.com)。C#提供一個默認的無參數(shù)構(gòu)造函數(shù),當我實現(xiàn)了另外一個有一個參數(shù)的構(gòu)造函數(shù)時候,還想保留這個無參數(shù)的構(gòu)造函數(shù)。這樣我應該寫幾個構(gòu)造函數(shù)?
兩個,一旦你實現(xiàn)了一個構(gòu)造函數(shù),C#就不會再提供默認的構(gòu)造函數(shù)了,所以需要手動實現(xiàn)那個無參數(shù)構(gòu)造函數(shù)。
C#中所有對象共同的基類是什么?
System.Object.
重載和覆寫有什么區(qū)別?
重載提供了對一個方法簽名的不同參數(shù)調(diào)用的實現(xiàn)。覆寫提供了子類中改變父類方法行為的實現(xiàn)。
在方法定義中,virtual有什么含意?
被virtual修飾的方法可以被子類覆寫。
能夠?qū)⒎庆o態(tài)的方法覆寫成靜態(tài)方法么?
不能,覆寫方法的簽名必須與被覆寫方法的簽名保持一致,除了將virtual改為override。
可以覆寫私有的虛方法么?
不可以,甚至子類中無法訪問父類中的私有方法。
能夠阻止某一個類被其他類繼承么?