java學習技巧,如何更輕鬆的學習java

學java不知不覺也已經三年了, 從不知java爲何物到現在一個小小的j2ee項目經理,雖說不上此道高手,大概也算有點斤兩了吧。每次上網,泡bbs逛論壇,沒少去java相關的版面,總體感覺初學者多,高手少,精通的更少

  由於我國高等教育制度教材陳舊,加上java自身發展不過十年左右的時間。還有一個很重要的原因就是java這門語言更適合商業應用, 所以高校裏大部分博士老師們對此語言的瞭解甚至不比本科生多。在這種環境下,很多人對java感到茫然,不知所措,不懂java能做什麼?即便知道了java很有用,也不清楚該從哪裏入手,所以就有了java入門難這一說法。

  ok,那我們就從java到底能做什麼聊起

  先說什麼是java

  java是一種面嚮對象語言,真正的面向對象,任何函數和變量都以類(class)封裝起來。至於什麼是對象什麼是類,我就不廢話了。

  關於這兩個概念的解釋任何一本面嚮對象語言的教材裏面都有

  知道了什麼是java,那自然就會對java能幹什麼感興趣

  在說java能做什麼之前,先說java作爲一個真正面嚮對象語言的優點

  首先第一個,既然是真正的面向對象,那就要做到徹底的封裝

  這是java和c++最大的不同,java所有的源碼以及編譯後的文件都以類的形式存在

  java沒有所謂的類外部定義,所有的函數(方法)以及變量(屬性)都必須在類內部定義

  這樣就不會出現一個類被切割成這裏一塊那裏一塊的情況,c++就可以,不是麼?

  老外看unix界面其實挺順眼的,他們就是吃unix飯長大的。而unix又是吃百家飯的,不像ms那麼唯利是圖,所以不怎麼對中國人友好。加上我國又沒有公司在做操作系統,所以看上去是不怎麼順眼。其實玩過unix的人都知道,unix對中文的支持一直不怎麼好

  三我還沒想到,其他人補充

  這樣做使得整個程序的結構異常清晰明瞭

  其次第二個,最讓人歡呼雀躍的是完全屏蔽了指針,同時引入了垃圾回收機制,任何一個寫過c/c++代碼的人,都會對內存管理深惡痛絕。因爲這使得我們不能把主要精力放在我們關心的事情上,而需要考慮計算機內部的一些事情,作爲一個軟件工程師,我想沒有一個人願意把大量的時間花在內存管理上,畢竟我們不是電子工程師

  此時java的優勢體現出來了,它完全屏蔽了內存管理。也就是說,如果你用java寫程序,寫出來的任何一個程序內存上的開銷,都不受你控制。乍一看,似乎你受到了束縛,但實際上不是這樣。 因爲雖然你的程序無法對內存進行管理,降低了一定的速度,但你的程序會非常非常的安全,因爲你無法調用一個空指針,而不像以前寫c的時候那樣,成天因爲空指針而擔驚受怕。

  當然,如果你深入瞭解這一行,就會發現java其實也無法保證程序不去調用空的指針,但是它會在最大程度上避免空指針的調用。這已經很好了,安全,這是java的最突出的優點。

 第三個,虛擬機跨平臺,這是java最大的特點,跨平臺。

  可能所有人都知道windows,但是不是所有人都知道unix 。和java一樣,很多人都不知道unix這種操作系統幹什麼用。我不想多說unix的應用,這不是主要,但是我要說,大部分小型機、工作站,都跑在unix一族的操作系統上,比如linux/solaris

  unix比起windows有一個最顯著的特點,穩定,這就好比思科和華爲。思科的機器慢但穩定,華爲的機器快但不穩定,作爲服務器這一端來說,要的皇怯卸囁歟俏榷ǎ評nix在服務器端還是非常有市場的。而且很重要的windows不安全,在ms的宣傳中我想所有人都很少看到安全二字。

  因爲windows操作系統針對的是pc用戶,pc死機就死機咯,大不了重啓。

  windows95最經常冒出來的就是藍屏,在服務器這一端上因爲ms沒有自己的芯片。

  所以要做系統有些力不從心啊。扯遠了,那麼java可以做到在windows上編譯,然後在unix上運行,這是c/c++做不到的

  那麼說到這裏,java能做什麼逐漸清晰起來。

  剛纔說到了,java程序有一個的特點是安全。這個安全是針對你的系統來說得,系統在跑了java程序之後會特別地穩定。而且還能跨平臺,那麼很明顯,java主要應用於除了windows操作系統以外所有的平臺。比如手機,服務器。想想看,如果你寫的程序要跑在手機上,而手機有多少款用的是windows?

  就算有,那如果你用c/c++,是不是要針對每一款手機寫一套程序呢?

  累死,那跨平臺的java就不用,做到編譯一次,隨時運行。同樣,在服務器這一端,如果我想給一個網絡門戶站點,比如sina 。

  寫一個應用程序,pc的性能肯定無法滿足sina這樣大站點併發數量的要求。那麼它就需要買服務器,那麼服務器ms沒有市場,而且windows很不安全。那麼十之八九會買一個sun/ibm的機器,或者hp,但不管是誰的機器

  它裝的操作系統也不會是windows,因爲windows太不安全了,而且多核的支持太差了。

        程序內存上的開銷,都不受你控制。乍一看,似乎你受到了束縛,但實際上不是這樣。 因爲雖然你的程序無法對內存進行管理,降低了一定的速度,但你的程序會非常非常的安全,因爲你無法調用一個空指針,而不像以前寫c的時候那樣,成天因爲空指針而擔驚受怕。


  當然,如果你深入瞭解這一行,就會發現java其實也無法保證程序不去調用空的指針,但是它會在最大程度上避免空指針的調用。這已經很好了,安全,這是java的最突出的優點

  第三個,虛擬機跨平臺,這是java最大的特點,跨平臺

  可能所有人都知道windows,但是不是所有人都知道unix 。和java一樣,很多人都不知道unix這種操作系統幹什麼用。我不想多說unix的應用,這不是主要,但是我要說,大部分小型機、工作站,都跑在unix一族的操作系統上,比如linux/solaris

  unix比起windows有一個最顯著的特點,穩定,這就好比思科和華爲。思科的機器慢但穩定,華爲的機器快但不穩定,作爲服務器這一端來說,要的皇怯卸囁歟俏榷ǎ評nix在服務器端還是非常有市場的。而且很重要的windows不安全,在ms的宣傳中我想所有人都很少看到安全二字。

  因爲windows操作系統針對的是pc用戶,pc死機就死機咯,大不了重啓。

  windows95最經常冒出來的就是藍屏,在服務器這一端上因爲ms沒有自己的芯片。

  所以要做系統有些力不從心啊。扯遠了,那麼java可以做到在windows上編譯,然後在unix上運行,這是c/c++做不到的

  那麼說到這裏,java能做什麼逐漸清晰起來

  剛纔說到了,java程序有一個的特點是安全。這個安全是針對你的系統來說得,系統在跑了java程序之後會特別地穩定。而且還能跨平臺,那麼很明顯,java主要應用於除了windows操作系統以外所有的平臺。比如手機,服務器。想想看,如果你寫的程序要跑在手機上,而手機有多少款用的是windows?

  就算有,那如果你用c/c++,是不是要針對每一款手機寫一套程序呢?

  累死,那跨平臺的java就不用,做到編譯一次,隨時運行。同樣,在服務器這一端,如果我想給一個網絡門戶站點,比如sina 。

  寫一個應用程序,pc的性能肯定無法滿足sina這樣大站點併發數量的要求。那麼它就需要買服務器,那麼服務器ms沒有市場,而且windows很不安全。那麼十之八九會買一個sun/ibm的機器,或者hp,但不管是誰的機器

  它裝的操作系統也不會是windows,因爲windows太不安全了,而且多核的支持太差了。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章