C#網絡應用編程基礎練習題與答案[3]

字號:

4. C#中的數(shù)組類型有何特點?
    【解答】
    1) 數(shù)組一般用于存儲同一種類型的數(shù)據(jù),包括Object類型。
    2) 數(shù)組是一種引用類型,而不是值類型。
    3) C#中除了可以有一維數(shù)組、多維數(shù)組外,還有交錯型數(shù)組。
    5. C#中不同整型之間進行轉換的原則是什么?
    【解答】
    在整型之間進行轉換時,小范圍類型可以隱式轉換為大范圍類型,但大范圍類型轉換為小范圍類型時需要使用顯式轉換。
    1. C#支持的數(shù)據(jù)類型有那些?與C++相比有哪些特點?
    【解答】
    C#支持的數(shù)據(jù)類型有:
    (1) 值類型
    包括:簡單類型、結構類型、枚舉類型。其中,簡單類型又分為:整型、布爾型、字符型、浮點型、小數(shù)型。
    (2) 引用類型
    包括:對象類型、類類型、接口、元數(shù)據(jù)、字符串類型、數(shù)組。
    與C++相比,C#的主要特點有:
    1) C#語言自C/C++演變而來。但是,它是完全按照面向對象的思想來設計的,并保證了類型的安全性。
    2) C#簡化了C++在類、名稱空間、方法重載和異常處理等方面的使用。摒棄了C++的復雜性,使它更易用、更少出錯。
    3) C#減少了C++的一些特性,不再有宏、多重繼承。特別對企業(yè)開發(fā)者來說,上述功能只會產生更多的麻煩而不是效益。
    4) C#采用嚴格的類型安全、版本控制、垃圾收集(garbage collect)等等。所有的這些功能的目標都是瞄準了開發(fā)面向組件的軟件開發(fā)。
    5) C#中不再有“::”、“.”、和“->”操作符,僅使用單個操作符“.”。
    6) C#使用統(tǒng)一的類型系統(tǒng),摒棄了C++多變的類型系統(tǒng)。
    7) 在C#中,不能在類的外部定義全局函數(shù)、變量或者是常量等。所有的東西都必須封裝在類中,包括實例成員或靜態(tài)成員。從而使C#代碼更加易讀且有助于減少潛在的命名沖突。
    8) 在C#中,不能使用沒有初始化的變量。從而避免了由于使用不經初始化的變量而導致的計算結果錯誤。
    2. C#語言中,值類型和引用類型有何不同?
    【解答】
    值類型和引用類型的區(qū)別在于,值類型的變量直接存放實際的數(shù)據(jù),而引用類型的變量存放的則是數(shù)據(jù)的地址,即對象的引用。
    值類型變量直接把變量的值保存在堆棧中,引用類型的變量把實際數(shù)據(jù)的地址保存在堆棧中,而實際數(shù)據(jù)則保存在堆中。注意,堆和堆棧是兩個不同的概念,在內存中的存儲位置也不相同,堆一般用于存儲可變長度的數(shù)據(jù),如字符串類型;而堆棧則用于存儲固定長度的數(shù)據(jù),如整型類型的數(shù)據(jù)int(每個int變量占用四個字節(jié))。由數(shù)據(jù)存儲的位置可以得知,當把一個值變量賦給另一個值變量時,會在堆棧中保存兩個完全相同的值;而把一個引用變量賦