阮國榮
(廣東南方職業學院,廣東 江門 529000)
關鍵字:C#語言;面向對象;編程
C#是從C和C++語言演變而來,它是一種簡單、現代、類型安全的完全面向對象的程序設計語言,它是Microsoft專門為.NET平臺而創建的。C#是近來一段時期發展起來的,不僅吸收以往編程語言的精華,同時其他語言存在問題也得到了解決。雖然表面上看C#是C++基礎上寫成的,然而實質上它是VB、Pascal、Java等各類語言的綜合。
(一)語法簡單易學
C#是非常容易學習的語言,該語言的首要目標就是簡單。在C#中,沒有C++中流行的指針。默認地,在受管理的代碼中,不允許如直接存取內存等不安全的操作。在C++中經常使用的操作符 “.”、“->”和“::”,它們分別使用于成員、引用和名字空間。然而操作符對初學者而言,到現在仍然是學習的難點。C#僅使用單個操作符 “.”,沒有其它操作符。現在對我們來說,就只剩下對嵌套名字的注解進行理解了。
(二)面向對象
C#屬于完成面向對象的程序設計語言,它擁有繼承、封裝和多態性這三大基本特征。
C#支持單繼承,即是一個類只能派生于另一個父類,也就是說只能有一個父類。大多數情況,我們創建一個子類也僅需要繼承一個基類。多重繼承制造出來的問題通常比其解決的問題還要多。如果你一定要用多重繼承,那么可以使用接口。 使用繼承機制可以增強代碼的復用性,減少代碼量,提高開發效率。
C#可以用屬性實現封裝,這樣做的好處是實現封裝更加方便,同時能夠通過屬性的寫和讀來保護類中的域,這樣就可以避免數據外泄,保證數據的安全。并且通過封裝,也可以使程序結構性更強,層次清晰,便于后期維護。
C#通過多態機制能夠減少編程代碼,同時也可以增強程序的可擴充性,也就是說程序要增加功能或者修改功能的時候,只需要在原來的基礎上修改少量代碼。
(三)類型安全
C#為了對垃圾收集器(garbage collector)以及自己進行保護,實行最嚴格的類型安全。所以C#中一些有關變量的規定必須要遵循:如果變量沒有初始化不能被使用。對于對象的成員變量,編譯器負責清零。而局部變量,則由你負責清零。當你使用的變量沒有初始化的時候,編譯器會提示你如何去做。這就避免了由于不經初始化的變量進行計算,而造成錯誤的結果,但是你還不知道為何會出現這些問題。
邊界檢查C#的一部分。當定義數組只有n個元素,那么也僅僅能夠使用n個元素,越界的問題得到有效的解決。
算術運算有可能溢出終值數據類型的范圍。C#允許在語句級或應用程序級檢測這些運算。在允許檢測溢出的情況下,當溢出發生時將會拋出一個異常。在C#中,被傳遞的引用參數是類型安全的。
(一)對微軟的操作系統,對微軟類庫的依賴性極強。所有項目編寫都依靠MSIL和CLS JIT編譯程序。但是程序設計和編譯程序級的優化不能在非微軟的平臺上充分利用,想在非Windows平臺上展開.NET,再充分運用它們也是不現實的。
(二)底層和高性能不合適。不合適做時間性能很高(高速算法)或空間性能很靈活(內存立即釋放)的程序,因為中間語言和編譯過程,比C/C++Native類型的語言會慢一些,內存自動回收難以立即釋放不需要的內存。
為了對C#語言有更加直觀的了解,下面舉一個簡單的C#例子,對C#的代碼風格和特征進行分析。

在上述代碼中,使用using關鍵字引用的名稱空間,使用namespace關鍵字定義命名空間,使用 class關鍵字定義類。C#程序是從Main方法開始執行的。方法的內容用大括號{ }包括,稱為“方法體”。Console.WriteLine()的作用是輸出字符串,把"這是一個簡單的C#程序"字符串輸出來。語句后面的分號表示了本句結束。
結合上述代碼可以總結出C#程序具備如下特征:
1.Main方法是程序入口,程序總是這開始執行。
2.C#嚴格區分大小寫。如變量a和變量A表示不同的變量。
3.所有語句都以分號“;”結束。注意要用英文的分號“;”作結束符,用中文的分號會出錯。
4.C#語言的單行注釋格式為: //、/*...*/和///。//僅可進行單行注釋,/*...*/可進行多行注釋,///是文檔注釋。
隨著生活的不斷改善,社會的不斷進步,計算機編程技術應用越來越普遍的今天,其應用水平得到穩步提升。特別是C#在其中起到重要的作用,讓計算機的功能更加完善。C#是優秀的計算機編程語言之一,精通C#不僅要通過理論知識的學習,同時要經歷不斷的實踐練習,進行總結分析,才能加深對語言的理解,將所學的知識融會貫通,最終編寫出優秀的C#語言程序。