Java與C#的區(qū)別小結(jié)
最近在學(xué)C#,從來沒有想過,還會(huì)學(xué)習(xí)C#。在學(xué)習(xí)C#中,我發(fā)現(xiàn)C#真是個(gè)好東東,在面向?qū)ο蟮倪^程中,C#更優(yōu)越。
Java與C#的區(qū)別之一:
java中還是有int、boolean、long等基本類型,但是在C#中,int,long本身就是類,從string轉(zhuǎn)化為int的過程中,可以直接采用int.TryParse(),或者直接采用Convert進(jìn)行轉(zhuǎn)化。
Java與C#的區(qū)別之二:
C#中加入了“屬性”、“委托”等,這些大大簡化了代碼的書寫和易理解性。在類里定義中多了“屬性”、結(jié)構(gòu)體的概念,可能是我之前學(xué)過VB,所以對(duì)屬性這種說法很敏感?!皩傩浴笨偸亲屛矣X得“所見即所得”的想法更近了,特別愿意去學(xué)習(xí)C#。開始學(xué)習(xí)“屬性”的時(shí)候,我很不明白保留字“value”,拿Java語言的基礎(chǔ)知識(shí)來比對(duì),才發(fā)現(xiàn),C#中“屬性”就是對(duì)成員變量的get、set方法的簡寫。這樣value就是一個(gè)傳入?yún)?shù)了。面向?qū)ο蟮恼Z言有很多是相通的。我是在被要求學(xué)習(xí)Java的,雖然Java基礎(chǔ)學(xué)得還好,但是關(guān)于Java用于各種架構(gòu)只有驚嘆,體味不深,所以在C#中,看到熟悉的東東,覺得學(xué)起來簡單輕松。而C#中的“委托”又來源于C++中的函數(shù)指針,很好地解決了對(duì)并發(fā)事件的處理,比較輕松地接受了這種思想。
Java與C#的區(qū)別之三:
C#中的關(guān)于“輸入輸出”部分比較簡單。通常一個(gè)基本類就可以找到想要的方法,而Java有時(shí)候要通過幾層的封裝,這使得我有點(diǎn)迷糊。
雖然C#有讓我覺得親近,但是Java的各種比較成熟的架構(gòu),是C#無法企及的。Java的Spring、Struts架構(gòu)使得項(xiàng)目的編寫過程特別清晰。
【編輯推薦】