java學(xué)習心得
當我們對人生或者事物有了新的思考時(shí),往往會(huì )寫(xiě)一篇心得體會(huì ),如此就可以提升我們寫(xiě)作能力了。那么好的心得體會(huì )都具備一些什么特點(diǎn)呢?下面是小編收集整理的java學(xué)習心得,歡迎閱讀與收藏。
java學(xué)習心得1
我是今年3月份接觸java的,其實(shí)上大學(xué)以前就買(mǎi)過(guò)java的書(shū),但沒(méi)進(jìn)去,因為那個(gè)時(shí)候我在學(xué)習vb,對于java代碼類(lèi)c的編寫(xiě)方式不是很習慣,所以就沒(méi)有認真的看。為什么最后好是學(xué)習java了呢。是因為我看到用java構建的web應用程序很不錯,實(shí)現的功能也很多,在現在的網(wǎng)絡(luò )社會(huì )里,肯定會(huì )有一番作為,而且我已經(jīng)忍受不了m$的代碼封鎖,所以轉投java了。 學(xué)習java已經(jīng)8個(gè)月了,在這里跟大家說(shuō)下心得,我剛開(kāi)始是看<> 第三版,因為學(xué)校沒(méi)開(kāi)java課,所以幾乎全是自學(xué),用了將近二個(gè)月的時(shí)間把這本大書(shū)啃完,感覺(jué)這書(shū)不錯,但也有很多人說(shuō)這書(shū)不好,的確這書(shū)不是按常規的順序講的,內容跳躍性強,但講的很深入,比較適合有cc++基礎的人看,這書(shū)看完,你就算基本掌握 java的基礎了,也就j2se部分。
現在java分三大部分基礎,從大到小排列:j2ee, j2se, j2me! j2ee:這個(gè)就是現在最流行,也很java技術(shù)用的最多的地方,java企業(yè)應用,要學(xué)好它,首先就要有java的基礎,這是最基本的,然后學(xué)習servlet,jsp,javabean以及基本的mvc結構,當然還有其他輔助知識,比如js,html還有一個(gè)對數據庫的操作,這些都需要時(shí)間來(lái)學(xué)習,學(xué)完這些后基本就可以做些簡(jiǎn)單的web應用程序了,比如模擬一個(gè)小的網(wǎng)上銀行等等,但做出來(lái)后肯定不易維護,因為剛才說(shuō)的都是技術(shù)的性的東西,還需要學(xué)些思想性的東西,那就是設計模式,它是對一些解決特定問(wèn)題的指導,并不是解決問(wèn)題的方法,現在認可的設計模式一共有23種,在j2ee里除了這23種外還有幾種,我還不太了解,我認為設計模式方面的書(shū)《設計模式-可復用面向對象軟件的基礎》英文名《design patterns-elements of reusable object-oriented software》這是提出設計模式那4為大牛寫(xiě)的,此書(shū)非常的抽象,使用語(yǔ)言是c++和smalltalk,有勇氣和有基礎的人可以嘗試一下。
j2se:java技術(shù)的基礎,很多基礎都是先從介紹它開(kāi)始,它和j2ee的區別就是jdk不同,j2ee比j2se的jdk要大一些,多一些類(lèi)包,但那些是在j2se中用不到的,j2se不光是基礎,也是java技術(shù)的一個(gè)應用方向,就是利用swing開(kāi)發(fā)桌面應用程序,但在windows平臺上,m$的地位是無(wú)法撼動(dòng)的,再加上swing開(kāi)發(fā)起來(lái)不是很容易,所以在j2se領(lǐng)域上,java一直處于劣勢,發(fā)展很慢,說(shuō)到j(luò )2se就一定要下eclipse,在別人眼里,eclipse只不過(guò)是一個(gè)java的'ide,但那只是eclipse的冰山一角,其實(shí)eclipse是一個(gè)大的平臺,暫可以把它比喻成windows,我們可以利用winapi去開(kāi)發(fā)在windows上運行的程序,eclipse也可以,我們稱(chēng)為eclipse插件開(kāi)發(fā),現在這項技術(shù)也在慢慢興起,有些公司已經(jīng)有應用的項目,eclipse用的是自己開(kāi)發(fā)的gui包,就是swt/jface,其實(shí)跟swing是一樣的,都是由java寫(xiě)的,但一個(gè)是sun寫(xiě)的,一個(gè)ibm寫(xiě)的,swt/jface用的本地的資源,所以運行起來(lái)很快,界面也可以做的非常漂亮,而且移植也做的很不錯,所以eclipse插件可以很容易的移植到linux上,相信這項技術(shù)一定很有發(fā)展。
java學(xué)習心得2
作為一名軟件工程的學(xué)生,學(xué)習java是我學(xué)習的重中之重,在長(cháng)達一年的學(xué)習過(guò)程中,我也對java也有新的認識。
我在漫長(cháng)的學(xué)習java的歲月中,遇到了許多大大小小的困難。首先,在學(xué)習java開(kāi)始中,老師往往會(huì )布置很多代碼題進(jìn)行實(shí)操或者書(shū)寫(xiě)在作業(yè)本上。在剛剛開(kāi)始的幾次作業(yè)中,我往往因為自己的浮躁與不耐煩,直接向同學(xué)要他們的代碼把作業(yè)上交,但漸漸的發(fā)現,課堂跟不上,成績(jì)不佳,我陷入了迷惘中……后來(lái),意識到自己學(xué)習java的態(tài)度與方式是不對的,經(jīng)過(guò)調整,也有了自己的一份學(xué)習java的心得體會(huì )。
java的學(xué)習需要理解代碼的思路。在寫(xiě)代碼與學(xué)習java知識點(diǎn)時(shí),往往對于每句代碼都應該理解透徹,在以后的代碼書(shū)寫(xiě)中,自己才能寫(xiě)出正確的代碼,甚至于找出自己的`代碼錯誤。這對于代碼的理解透徹,就需要自己在上課時(shí),好好理解老師的代碼思維,自己也需要多看看關(guān)于代碼的書(shū),加深理解。
java的學(xué)習需要多做,多思考。在java學(xué)習中,不僅要學(xué)會(huì )打課內的代碼,也需要通過(guò)百度找尋課外的代碼,舉一反三,自己解決很多的問(wèn)題。
在這一年的學(xué)習中,我對于java有了初步的認識與了解,我知道自己真正掌握java還需要一段時(shí)間的學(xué)習,但我相信我自己只要有顆想學(xué)習好java的心,對于以后的困難是不懼怕的,我相信在學(xué)習java中,自己是在此過(guò)程中不斷成長(cháng)的,進(jìn)步的。
java學(xué)習心得3
在學(xué)習了近一個(gè)學(xué)期java后,我有了一點(diǎn)自己的見(jiàn)解。Java是面向對象的,具有平臺無(wú)關(guān)性。所以現在被廣泛的應用于很多領(lǐng)域。也是因為老師在開(kāi)始上課的時(shí)候就給我們講過(guò)這些,所以帶有興趣和動(dòng)力去學(xué)習java程序設計。
在開(kāi)始學(xué)習java時(shí),覺(jué)得有c語(yǔ)言做基礎會(huì )比較容易一些。Java區分大小寫(xiě),在一開(kāi)始調試別人的程序時(shí),常會(huì )因為字母、空格等一些小的失誤調試不出來(lái),慢慢地隨著(zhù)練習的增多,這些低級錯誤也漸漸可以避免了。Java中類(lèi)比較多,還有包等,一開(kāi)始學(xué)起來(lái)覺(jué)得比較繁瑣。
通過(guò)學(xué)習,對java有了一定的了解。Java的運行原理:Java是一門(mén)編譯解釋型語(yǔ)言,我們寫(xiě)好的Java程序經(jīng)過(guò)編譯后生成后綴名為class的文件,在經(jīng)過(guò)Java虛擬機JVM對class文件進(jìn)行解釋運行,Java程序才能運行起來(lái)。(需要JVM是它實(shí)現跨平臺的關(guān)鍵,所以又說(shuō)Java是跨平臺語(yǔ)言)。Java思想:Java是一門(mén)面向對向語(yǔ)言,他定義一切都是對象,例如小程序:
里邊定義了兩個(gè)類(lèi)NewClass 和Student NewClass調用了Student 的add()方法。
課堂上老師根據課本講的內容都是基礎的,要想有進(jìn)一步的提高,需要課下花時(shí)間去求助網(wǎng)絡(luò )等方法。因為之前我沒(méi)有太大的興趣和充足的時(shí)間,所以只是學(xué)習課本基礎知識。后來(lái)我從網(wǎng)絡(luò )上學(xué)習了一些關(guān)于java程序匯編的一些思想,有助于以后深入系統的學(xué)習。
具體而言,學(xué)習java其實(shí)就是學(xué)習程序設計,學(xué)習程序設計就需要接受一種編程思想。要掌握java的精華特性而且要知道是什么,比如,Interface和multi-thread。用interface是更好的多繼承的模型,而多線(xiàn)程則是設計到語(yǔ)言一級的重要特性。要完全理解interface是為什么,用多線(xiàn)程又有幾種常用的編程模型。學(xué)習語(yǔ)言是要應用的,所以在掌握基本的思想后要轉化為應用。目前比較好的開(kāi)發(fā)模式是采用自定向下的面向對象的.設計,加上MVC的模式(MVC架構是"Model-View-Controller"的縮寫(xiě),中文翻譯為"模型-視圖-控制器"。MVC應用程序總是由這三個(gè)部分組成。
Event(事件)導致Controller改變Model或View,或者同時(shí)改變兩者。)。首先要找出最頂層的對象(這往往是最難的),然后一層一層往下遞歸,記住每次應符合7+/-2的原則,因為我們人的短記憶就是這樣。一般有圖形用戶(hù)界面的應從界面開(kāi)始設計。在有了初步的設計模型之后,為了更好的設計程序,應該學(xué)習一下設計模式,例如體系結構模式(Layering分層,Pipe/Filter管道或過(guò)濾器)、編程模式(比如Copy-on-Write)。
懂了這些模式之后,就會(huì )對系統的整體結構有很好的把握,而學(xué)術(shù)上也有傾向一個(gè)系統完全可以由各種模式組合而成。對于程序設計,在初步對基本程序進(jìn)行調試后,應該將紙上談兵轉化成實(shí)踐。一般課本上的例子不能算是實(shí)踐,只能知道一些語(yǔ)言特性的應用,而對于實(shí)際的工程來(lái)講僅是冰山一角。對于像我們這樣的初學(xué)者,應該在公認的論壇里面找一些比較經(jīng)典的例子。比如用Java實(shí)現的HotDraw(源自SmallTalk),在
rolemodel.com這個(gè)網(wǎng)站中,有一些原代碼和一些基本設計的文檔。從HotDraw上我學(xué)到了什么是Framework,以及如何用rolemodel的方式來(lái)構造,這樣我就可以應用到其他的地方。設計模式目前有23種。 當有了一定的基礎之后,按照前輩的建議,用簡(jiǎn)單的程序實(shí)現一些簡(jiǎn)單的系統。如果可以對他進(jìn)行進(jìn)一步的修改,找出自己覺(jué)得可以提高性能的地方,加上自己的設計,那就更上一個(gè)層次了,也就會(huì )真正地感到有所收獲。學(xué)習要學(xué)以致用,所以要加強實(shí)踐。
我們在看書(shū)的時(shí)候,不要等到你完全理解了才動(dòng)手敲代碼,而是應該在看書(shū)的同時(shí)敲代碼,程序運行的各種情況可以讓你更快更牢固的掌握知識點(diǎn)。 對目前的學(xué)習狀況,應該每天要多敲代碼(在敲代碼是要按自己的想法去敲,不要只是抄別人的代碼),把老師布置的作業(yè)做好,好好寫(xiě)實(shí)驗報告,同時(shí)要把自己做過(guò)的程序都保存好,有助于以后的復習鞏固。如果有更深一步的學(xué)習需要,我會(huì )看別人推薦的書(shū)《(java2 21天自學(xué)通)Sams Teach Yourself java 2 in 21 Days,Professional Reference Edition》《面向對象軟件構造(Object-Oriented Software Construction)》《設計模式(Design Patterns)》《The Art of Computer Programming》。 學(xué)習是一個(gè)循序漸進(jìn)的過(guò)程,要在獨立思考的基礎上遇到不懂的問(wèn)題向別人求救。萬(wàn)不得已才請教別人?催^(guò)一些學(xué)習java較好的人的經(jīng)驗是他們在遇到問(wèn)題時(shí)首先自己思考,很多問(wèn)題稍做思考就可以解決。當必須要請教時(shí),在請教之前,你應該先回答如下幾個(gè)問(wèn)題。 1是否在google中搜索了問(wèn)題的解決辦法?
2是否查看了Java API文檔?
3是否查找過(guò)相關(guān)書(shū)籍?
4是否寫(xiě)代碼測試過(guò)?
如果回答都是"是"的話(huà),而且還沒(méi)有找到解決辦法,再問(wèn)別人不遲。要知道獨立思考的能力很重要。我們在其他的學(xué)習中也遇到過(guò)這樣的情況,所以我們清楚獨立思考的重要性,它有助于我們更加深入牢固地掌握知識,比向別人求助記得更牢。
總之,每個(gè)語(yǔ)言能夠存活并且發(fā)展起來(lái),必有其特點(diǎn)讓人們喜歡,學(xué)習java雖然是課程設置的要求,但隨著(zhù)學(xué)習的進(jìn)一步深入,對它也有了一定的興趣,F在有很多種計算機語(yǔ)言,語(yǔ)言和語(yǔ)言沒(méi)有比較的必要的,語(yǔ)言只是工具,重要的是思想!所以在學(xué)習的過(guò)程中,選定一種感興趣的語(yǔ)言后,首先學(xué)習基本的語(yǔ)句,然后在宏觀(guān)角度去學(xué)習程序設計的思想。
java學(xué)習心得4
4月26日CVS---4月27日UML 連續兩天狀態(tài)很是不好,上課總是不能夠集中精神,不知為什么聽(tīng)這兩天課的時(shí)候精神很渙散,也不知道自己在想什么,一整天的課,似聽(tīng)非聽(tīng)的只聽(tīng)到了一半。 或許是持續的精神高度集中,而引起了身體的疲憊吧。感覺(jué)自己的記憶力不斷下降,這不是個(gè)好兆頭。每天都在學(xué)習,每天都在接受新的'知識,如果沒(méi)有一個(gè)好的精神狀態(tài)和記憶,學(xué)到最后就等同于黑熊掰玉米一樣。不可以給自己過(guò)多的理由去偷懶,不可以看到別人在不學(xué)習時(shí)就想著(zhù)自己放松一下。從某種角度講放松和放縱只在一念之間,一味的放松最后就會(huì )成為放縱。
有時(shí)人的心理真的很難以琢磨,自己明明已經(jīng)計劃好了的事情總因為一個(gè)想多睡會(huì )的念頭而不得不改變 。有時(shí)很想讓自己的進(jìn)度快一些,但又怕加快后會(huì )亂了頭緒。
錯,大錯特錯。這都是片面的想法,因為總想著(zhù)今天的事情沒(méi)辦完還可以有明天,因為總想著(zhù)睡一會(huì )20分鐘后再去學(xué)習。這就是偷懶,這就是不負責任,總想休息,總想著(zhù)還有明天。那還來(lái)學(xué)習干嘛,那還要理想干嘛,還不如回家去作白日夢(mèng)得了。
話(huà)說(shuō)回來(lái),還是沒(méi)有把自己逼的絕路上,所以懶惰才會(huì )乘虛而入。學(xué)習并不難,難就難在堅持。人生不是游戲,也不可以像小孩子一樣總犯錯總想著(zhù)他人會(huì )諒解。對于明天的幸福,今天吃再多的苦也是值得的。
java學(xué)習心得5
對于很多只會(huì )C語(yǔ)言的初學(xué)者而言,面對java基礎語(yǔ)法學(xué)習,反而感覺(jué)很難,其實(shí)其中最大的問(wèn)題不是語(yǔ)法難,而是一種編程思想的'轉變。面向過(guò)程就是把你的代碼封裝成函數,然后依次去做一件事情,面向過(guò)程是把你要做的事情抽象成對象,告訴對象去做。所以要想學(xué)好java入門(mén),必須知道類(lèi)和對象的概念。
類(lèi)是對生活中事物的抽象描述,比如人類(lèi),動(dòng)物類(lèi),交通工具類(lèi);對象即是對類(lèi)的具體實(shí)例化,比如張三是人,貓是動(dòng)物,飛機是交通工具(對象-----類(lèi))。Java基礎入門(mén)學(xué)習路線(xiàn)可以總結為四步走:
1.java開(kāi)發(fā)環(huán)境的搭建;
2.java初級之基礎語(yǔ)法學(xué)習(80%類(lèi)似C語(yǔ)言);
3.java中級之面向對象編程學(xué)習(重點(diǎn));
4.java中級之應用編程學(xué)習。
第一步:JDK軟件開(kāi)發(fā)包時(shí)java軟件開(kāi)發(fā)環(huán)境,
包括jre運行環(huán)境和jvm虛擬機,在oricle官網(wǎng)下載javaSE版本JDK包;配置好環(huán)境變量就可以使用了。
第二步:java初級語(yǔ)法學(xué)習,
1.基本數據類(lèi)型整形,字符型,字節型,長(cháng)整形,短整形,浮點(diǎn)型,雙精度,布爾型;
2.運算符+,-,_/,%等;
3.控制流(while,switch,if else);
4.數組的定義方式。
此階段基本無(wú)難度,只要了解練習例題。
第三步:java面向對象學(xué)習,
1.類(lèi)和對象;
2.java語(yǔ)言三大特性,封裝、繼承、多態(tài);
3.一些關(guān)鍵字學(xué)習(static,final,abstract,extends)等。
這是重點(diǎn),大家根據知識點(diǎn)一步步研究學(xué)習才是關(guān)鍵。
第四步:java應用編程,
例如:文件IO,集合(類(lèi)似C語(yǔ)言數據結構),異常處理,線(xiàn)程,網(wǎng)絡(luò ),JDBC數據庫操作等,都是掌握面向對象以后,在查找不同的類(lèi)使用類(lèi)中不同的方法達到應用的效果,所以并不會(huì )很難。等基礎語(yǔ)法掌握了就可以繼續后面框架學(xué)習(java web方向,android學(xué)習),相信明確思路你會(huì )豁然開(kāi)朗,更有學(xué)習動(dòng)力。
java學(xué)習心得6
1、學(xué)習之路,不走彎路,就是捷徑
軟件開(kāi)發(fā)之路是充滿(mǎn)荊棘與挑戰之路,也是充滿(mǎn)希望之路。Java學(xué)習也是如此,沒(méi)有捷徑可走。所有的人都期盼成功,但是并不是每個(gè)人都會(huì )為走向成功全力以赴。人們在渴望成功的同時(shí),也渴望能夠少一分努力,多一分收獲。而事實(shí)上要獲取真正的成功,每個(gè)人都必須經(jīng)歷艱辛。無(wú)論你出身豪門(mén),還是出身寒舍,你都不得不接受這樣一個(gè)事實(shí):成功沒(méi)有捷徑可走,只有頑強的意志與堅持不懈的奮斗才能帶你走向成功。
2、如何學(xué)習程序設計?
Java是一種平臺,也是一種程序設計語(yǔ)言。首先一定要保持熱情,買(mǎi)一本關(guān)于這種語(yǔ)言入門(mén)的書(shū),一開(kāi)始不要看太難的,循序漸進(jìn),先看一遍。多練基礎代碼,將各種語(yǔ)句練得非常熟練,可以選一些計算機語(yǔ)言初等練習題做做。再重頭到尾好好看一遍,哪里不懂,可以與他人交流。多看看別人用這種語(yǔ)言寫(xiě)的程序,借鑒編程方法,對自己錯誤的思想進(jìn)行校正。多多練習,每天都打一些代碼,畢竟熟能生巧!
3、培養興趣
興趣是指一個(gè)人力求認識某種事物或從事某種活動(dòng)的心理傾向。知識是興趣產(chǎn)生的基礎條件,因而要培養某種興趣,就應有某種知識的積累,學(xué)習編程,就應該多看看那方面的書(shū)籍,不僅能提高自己的文化內涵,也能漸漸培養自己的學(xué)習熱情。有空多到一些程序員論壇轉轉,你會(huì )發(fā)現,他們其實(shí)很樂(lè )觀(guān)幽默,時(shí)不時(shí)會(huì )冒出智慧的'火花。
4、腳踏實(shí)地,循序漸進(jìn)
現實(shí)生活中,人人都有夢(mèng)想,都渴望成功,都想找到一條成功的捷徑。其實(shí),捷徑就在你的身邊,那就是勤于積累,腳踏實(shí)地,積極肯干。無(wú)論做什么事都要戒驕戒躁,踏實(shí)地走好每一步,讓自己的生活有目標、有計劃,這樣我們的生活才會(huì )變得充實(shí),我們離成功也就越來(lái)越近了;相反,如果浮躁、急功近利,就不能集中精力去完成自己的人生目標,最后很可能一事無(wú)成,一敗涂地。
5、多實(shí)踐,快實(shí)踐
紙上得來(lái)終覺(jué)淺,絕知此事要躬行。軟件開(kāi)發(fā)是一門(mén)工程學(xué)科,注重的就是實(shí)踐,"君子動(dòng)口不動(dòng)手"對軟件開(kāi)發(fā)人員來(lái)講根本就是錯誤的,他們提倡"動(dòng)手至上",但別害怕,他們大多溫文爾雅,沒(méi)有暴力傾向,雖然有時(shí)候蓬頭垢面的一副"比爾蓋茨"樣。有前輩高人認為,學(xué)習編程的秘訣是:編程、編程、再編程,筆者深表贊同。不僅要多實(shí)踐,而且要快實(shí)踐。我們在看書(shū)的時(shí)候,不要等到你完全理解了才動(dòng)手敲代碼,而是應該在看書(shū)的同時(shí)敲代碼,程序運行的各種情況可以讓你更快更牢固的掌握知識點(diǎn)
6、多讀好書(shū)
書(shū)中自有黃金屋,書(shū)中自有顏如玉。培根說(shuō),“讀史使人明智,讀詩(shī)使人聰慧,演算使人精密,哲理使人深刻,倫理學(xué)使人有修養,邏輯修辭使人善辨!睆臅(shū)中可以領(lǐng)悟“不以物喜,不以己悲”豁達情懷,亦可以領(lǐng)略“天下興亡,匹夫有責”的豪邁心胸。從好書(shū)中提升了思想境界,陶冶了情操。
7、思想的領(lǐng)悟
學(xué)習Java也是如此,必須要有扎實(shí)的基礎,你才能在J2EE、J2ME領(lǐng)域游刃有余。掌握了基礎語(yǔ)法和Java程序運行原理后,我們就可以用Java語(yǔ)言實(shí)現面向對象的思想了。面向對象,是一種方法學(xué);是獨立于語(yǔ)言之外的編程思想;是CBD基于組件開(kāi)發(fā)的基礎;屬于強勢技術(shù)之一。
java學(xué)習心得7
Java是一種廣泛使用的計算機編程語(yǔ)言,具有跨平臺、面向對象、安全性高等特點(diǎn)。作為一名剛剛接觸Java的初學(xué)者,我在學(xué)習過(guò)程中不斷思考、感悟,不僅對于Java這門(mén)語(yǔ)言有了更深入的了解,更收獲了許多寶貴的經(jīng)驗和體會(huì )。接下來(lái),我將分享我在學(xué)習Java過(guò)程中的心得感想。
首先,Java作為一門(mén)編程語(yǔ)言,給我最深刻的體會(huì )就是它的跨平臺特性。在Java中,代碼是以字節碼形式存在的,可以在不同操作系統的計算機上運行。這種特點(diǎn)讓我深感Java的強大之處,我可以編寫(xiě)一次Java代碼,然后在Windows、Linux或者M(jìn)ac等多個(gè)平臺上運行,無(wú)需針對每個(gè)平臺進(jìn)行不同的編寫(xiě)和測試工作。這種跨平臺的能力極大提高了開(kāi)發(fā)效率,降低了開(kāi)發(fā)成本,是一種非常寶貴的資源。
其次,Java的面向對象特性也給我留下了深刻的'印象。在Java中,一切都可以看作是對象,基于對象的思想設計和開(kāi)發(fā)程序可以使代碼更加模塊化、可復用、易于維護。我在學(xué)習Java的過(guò)程中,也體會(huì )到了面向對象編程的魅力。通過(guò)將代碼進(jìn)行封裝、繼承和多態(tài)等方式來(lái)組織程序結構,能夠使代碼更加清晰、易于理解,也更加靈活。而且,面向對象的思維方式可以使代碼的復用性得到提高,降低了重復編寫(xiě)代碼的工作量。
再次,學(xué)習Java讓我認識到了代碼質(zhì)量的重要性。在學(xué)習的過(guò)程中,我不斷發(fā)現自己寫(xiě)出的代碼有時(shí)候看起來(lái)雖然能正常運行,但是結構混亂、命名不規范、邏輯不清晰等問(wèn)題也時(shí)有發(fā)生。這給我敲響了警鐘,代碼質(zhì)量是一個(gè)非常重要的方面,對于一個(gè)程序員來(lái)說(shuō),寫(xiě)出高質(zhì)量的代碼是必不可少的。這不僅有助于自己更好地理解和維護代碼,也可以提高代碼的可讀性,便于他人理解和協(xié)作。因此,在學(xué)習Java的過(guò)程中,我不僅要關(guān)注代碼的功能實(shí)現,還要注重代碼的質(zhì)量,力求將代碼寫(xiě)得更加規范、結構更加清晰。
同時(shí),在學(xué)習Java的過(guò)程中,我也深深意識到了持續學(xué)習和不斷練習的重要性。Java是一門(mén)非常龐大的編程語(yǔ)言,其中包含了眾多的知識點(diǎn)和概念,需要不斷地學(xué)習和實(shí)踐才能掌握。尤其對于一個(gè)初學(xué)者來(lái)說(shuō),面對茫茫多的知識,有時(shí)候會(huì )感到力不從心。但是,只有持續學(xué)習和不斷練習,才能漸漸地掌握和理解Java的特性和用法。無(wú)論是閱讀書(shū)籍、參加培訓、編寫(xiě)小程序還是與他人交流,都是提高自己的途徑。通過(guò)不斷學(xué)習和實(shí)踐,我相信我會(huì )越來(lái)越熟練地運用Java編程。
最后,學(xué)習Java讓我深刻體會(huì )到編程能力的重要性。在當今社會(huì ),技術(shù)的發(fā)展日新月異,計算機技術(shù)在各個(gè)領(lǐng)域扮演著(zhù)越來(lái)越重要的角色。而作為一名計算機專(zhuān)業(yè)的學(xué)生,掌握一門(mén)編程語(yǔ)言是非常必要的。Java作為一門(mén)廣泛應用的語(yǔ)言,掌握它可以為我帶來(lái)更多的機會(huì ),不僅可以為我今后的學(xué)習和工作提供幫助,同時(shí)也可以更好地與他人交流和合作。學(xué)習Java讓我認識到編程能力的重要性,我深信通過(guò)不斷地學(xué)習和實(shí)踐,我一定能夠以?xún)?yōu)秀的編程能力面對未來(lái)的挑戰。
總的來(lái)說(shuō),通過(guò)學(xué)習Java這門(mén)編程語(yǔ)言,我不僅對它的特點(diǎn)有了更深入的了解,也收獲了許多寶貴的經(jīng)驗和體會(huì )。Java的跨平臺、面向對象特性,以及代碼質(zhì)量、持續學(xué)習和編程能力的重要性等方面的體會(huì ),讓我對編程和技術(shù)有了更為深刻的認識。我相信通過(guò)不斷學(xué)習和實(shí)踐,我會(huì )成為一名優(yōu)秀的Java開(kāi)發(fā)者,為社會(huì )的發(fā)展和進(jìn)步貢獻自己的力量。
java學(xué)習心得8
Javaweb課程結束了,在完成了eclipse三份實(shí)驗報告之后我開(kāi)始總結這門(mén)課程自己究竟學(xué)到了什么。
從C語(yǔ)言到Java,再到j(luò )sp,最后到j(luò )avaweb,一直都在與編程都打交道,學(xué)好它一是專(zhuān)業(yè)的需要,二是自己覺(jué)得它今后對自己會(huì )有很大的用途。C語(yǔ)言是一個(gè)面向過(guò)程的語(yǔ)言,而Java是一個(gè)面向對象的語(yǔ)言。在C語(yǔ)言里,行為稱(chēng)為函數;在Java里,行為稱(chēng)為方法。在C語(yǔ)言里,只有變量和函數;在Java里,一切邏輯由類(lèi)封裝,即“萬(wàn)物皆對象”。C語(yǔ)言的struct和Java的類(lèi)相似,但struct里只能有屬性,而類(lèi)里可以有屬性和方法。所以,C語(yǔ)言的分工不清晰,主控程序幾乎承擔了全部的職責;而Java可以把方法放在類(lèi)里,對象的職能很多,可以單獨完成某個(gè)類(lèi)的全部方法。
首先我想回顧一下javaweb這本書(shū)上的主要內容:
第一章是對Web應用程序的概述。從中我了解到Web應用程序的三層體系結構:表示層、業(yè)務(wù)層、數據存取層。它們同是敘述在編寫(xiě)代碼時(shí)應做的規劃和應遵循的規則,這種規劃在以后的學(xué)習中時(shí)有出現,說(shuō)明編程并不是一味地進(jìn)行循環(huán)判斷、死記硬背,而需要在技術(shù)上有所加強、在效率上有所提高。接下來(lái)學(xué)的是JSP知識。要學(xué)JSP,就必須會(huì )HTML,如果HTML學(xué)不通,這對以后的學(xué)習都是一個(gè)瓶頸。這點(diǎn)我有所體會(huì )。因為我對HTML掌握得比較好,在這方面沒(méi)有遇到什么困難。但如果沒(méi)掌握好這些知識,加上要學(xué)新知識,就會(huì )在舊難題的基礎上增加新難題,兩頭招架,實(shí)有些吃不消。所以,基礎是很重要的,基礎一定要打扎實(shí),吃透,否則上層建筑的建起就不會(huì )很順利甚至沒(méi)法起步。然后是JavaBean。JavaBean里有set()和get()方法,用這些方法能很容易地傳值,邏輯上更標準,代碼看起來(lái)也更規范。但set()和get()方法只是用來(lái)對屬性進(jìn)行操作的,所以如果是進(jìn)行復雜的邏輯或對數據庫進(jìn)行操作等,那么就不要寫(xiě)成set()和get()方法,只用一個(gè)有返回值的方法就足以。這樣直觀(guān)方便,且符合規范。
接著(zhù)是Servlet。它給我的第一感覺(jué)是很專(zhuān)業(yè)、很難懂。書(shū)上介紹了一大堆接口、類(lèi)、和重寫(xiě)的方法,一時(shí)覺(jué)得暈頭轉向。后來(lái)用得多、看得多了,Servlet的基本格式也記得差不多,其實(shí)也沒(méi)什么難的。只要記住Servlet是一個(gè)用Java編寫(xiě)的應用程序,在服務(wù)器上運行,用來(lái)處理請求和響應,也可以單獨做為一個(gè)Web頁(yè)面。
在JDBC技術(shù)這章,我感到學(xué)習的壓力。JDBC的工作原理、JDBC的分類(lèi)、它的主要接口、以及它連接數據庫的基本過(guò)程和運行效果等事先后我沒(méi)有聽(tīng)懂。后來(lái)在圖書(shū)館借到了一本資料書(shū)電子工業(yè)出版社出版的《JavaWeb從初學(xué)到精通》適合Java開(kāi)發(fā)Web應用和J2EE方面的初學(xué)者加上編程實(shí)戰演習,總算弄懂了點(diǎn)眉目。
最后一章主要是一些技術(shù)專(zhuān)題。例如訪(fǎng)問(wèn)路徑問(wèn)題、結果集處理、復雜查詢(xún)等。在前面幾章的的能力功底基礎上這章顯得要簡(jiǎn)單輕松地多。大致類(lèi)似于對前面知識的系統總結。
以上就是對這個(gè)階段學(xué)習的一段回顧。接下來(lái)我想總結一下自己的學(xué)習心得:首先學(xué)習這門(mén)課程,就必須先要了解什么是web應用。通過(guò)瀏覽器可以訪(fǎng)問(wèn)新浪網(wǎng)、中華網(wǎng)、淘寶網(wǎng)、網(wǎng)易、搜狐網(wǎng)、微軟的網(wǎng)站及sun公司的網(wǎng)站等,這些就是Web應用。對于web應用,我們需要使用瀏覽器,通過(guò)網(wǎng)絡(luò )訪(fǎng)問(wèn)在遠程的服務(wù)器運行的程序。Web應用指的就是這些網(wǎng)站中的程序。
其次,是編程。學(xué)習編程最重要的就是勤記憶,勤練習,勤思考。需要記憶很多,有些東西必須要死記,沒(méi)有偷懶的'辦法,在記憶的時(shí)候可以找一些規律,比如把類(lèi)似的東西歸在一起記憶。平時(shí)在做練習的時(shí)候書(shū)上的例題和習題很重要,只要把書(shū)上的例子吃透,課后的習題都會(huì )做,這樣就能達到掌握知識的目的,最后在期末復習的過(guò)程中要不時(shí)地復習前面的知識,這樣才能熟練掌握所學(xué)的知識。在勤思考方面,就是在平時(shí)的編程演練中遇到困難的時(shí)候不要立刻急著(zhù)去問(wèn)身邊的同學(xué)或是老師,自己應當對照課本或是相關(guān)的學(xué)習資料慢慢進(jìn)行修改,只有在自己確實(shí)已經(jīng)盡力但仍然不知如何操作的情況下才可以去詢(xún)問(wèn)別人,只有這樣才可以加深自己的影響。
還記得自己當初最開(kāi)始時(shí)學(xué)習java的情景。那時(shí)自己除了知道什么是繼承,封裝,多態(tài),抽象類(lèi),接口這些外,其他的就什么都部知道了。后來(lái)自己在慢慢摸索的過(guò)程中才逐漸積累了對這門(mén)學(xué)科的敏感度開(kāi)始接觸Java覺(jué)Servlet是一個(gè)非常深奧的技術(shù)。我曾經(jīng)想學(xué)習網(wǎng)頁(yè)設計,看到HTML哪些松散的標記,我放棄了,最終也沒(méi)有學(xué)會(huì )做網(wǎng)頁(yè)。只知道網(wǎng)頁(yè)編輯工作有Drameware或FrontPage。當接觸Serlvet后,發(fā)現做網(wǎng)頁(yè)竟然也可以像寫(xiě)Java程序一樣進(jìn)行編寫(xiě)。完成第一個(gè)用Servlet寫(xiě)的WEB版的HelloWorld程序,足足花費了我半天時(shí)間。主要是花費在環(huán)境搭配上面。一個(gè)小小的HELLOWorld,用Drameware可能也就一分鐘就能搞定的事。對于一個(gè)完全不懂HTML的人來(lái)說(shuō),要想用Servlet來(lái)開(kāi)發(fā)動(dòng)態(tài)WEB應用還是太難了。接下來(lái)很快就接觸到了JSP。JSP并不需要我在Java程序里寫(xiě)HTML代碼,而是變成了在HTML中寫(xiě)Java程序。初學(xué)時(shí),所有的數據庫連接,數據庫訪(fǎng)問(wèn),數據顯示,業(yè)務(wù)代碼和HTML標記等都寫(xiě)在JSP代碼中,感覺(jué)JSP真是無(wú)所不能。在做一些小應用時(shí),開(kāi)發(fā)速度也非常的快。而當遇到了比較復雜的業(yè)務(wù)邏輯后,JSP開(kāi)發(fā)就像是一個(gè)惡夢(mèng),每天大量的工作就是調試頁(yè)面,當其它頁(yè)面需要類(lèi)似的功能時(shí),進(jìn)行代碼拷貝來(lái)進(jìn)行代碼的復用,后來(lái)才知道這就是典型的Model1模型。當把JSP與Servlet相結合后,一切都發(fā)生了改變。JSP僅用于數據展示,而Servlet用于進(jìn)行業(yè)務(wù)調用和頁(yè)面流程控制,這就是所謂的Model2模型。原來(lái)JSP并不是Servlet的替代品,JSP更需要與Servlet進(jìn)行合作。再明白了Servlet與的重要后,才回過(guò)頭開(kāi)始去學(xué)習Servlet,包括Servlet的生命周期,Servlet的重要接口及方法,自定義標簽等。通過(guò)這樣反復的聯(lián)系我終于在面對java和jsp時(shí)不再像以前那樣那么沒(méi)有自信了。
所以花費些力氣去學(xué)習Java基礎,學(xué)習Jsp,Servlet,甚于學(xué)HTML,Javascript對進(jìn)行Web開(kāi)發(fā)都是十分必要的。
最后我想總結一下學(xué)習方向的建議,JAVA基礎知識是學(xué)習任何JAVA擴展體系知識的前提,所以在學(xué)習javaweb的過(guò)程中,一定得抽時(shí)間學(xué)習JAVA基礎,窩在圖書(shū)館找到了基本相關(guān)的讀物《Java核心技術(shù)》《Java編程思想》和JDK的API文檔。另外由于編程有一些專(zhuān)用的英語(yǔ)術(shù)語(yǔ),因此學(xué)好一些必要與之相關(guān)的英語(yǔ)對我們今后更好地學(xué)習這門(mén)學(xué)科是很有幫助的。
java學(xué)習心得9
對于軟件工程的了解是從大學(xué)開(kāi)學(xué)時(shí)候開(kāi)始的,因為一個(gè)農村的孩子對于互聯(lián)網(wǎng)的接觸是少之甚少的;軟件工程java方向,我懷著(zhù)好奇和喜悅來(lái)到了我的學(xué)校,開(kāi)始了我的大學(xué)生活,未知,好奇,一切的一切都在等著(zhù)我們。我和所有人一樣,以為大學(xué)再也不用像高中一樣整天埋頭苦干,挑燈夜戰,我以為我到了天堂,脫離了那個(gè)狹小的村莊,我以為我看到了希望;可慢慢的我發(fā)現這里的`一切都不是想象的樣子,當面對一個(gè)又一個(gè)處事,交友,學(xué)習的挫折時(shí);我開(kāi)始懷疑自己,開(kāi)始恐慌,因為面對形形色色的人和各種各樣的事我都措手不及無(wú)法應對;連以前雄心壯志的想要考研的目標都磨滅了,因為我深深的感受到,對于一個(gè)農村背景的孩紙,我的父母已經(jīng)為我付出了那么多,看到他們一天天蒼老的面容,我再也不忍心繼續拿考研上學(xué)來(lái)逃避成長(cháng),逃避對他們的責任。
大一下半年,突然聯(lián)系到一個(gè)朋友,誤打誤撞,沒(méi)想到她學(xué)的竟然也是java,那時(shí)她就快畢業(yè)了,當時(shí)感覺(jué)真的很高興;但我當時(shí)對java了解的很少很少,因為學(xué)校安排的課程沒(méi)有跟java有關(guān)的,自己也曾去圖書(shū)館借java方面的書(shū)籍,可是看不懂。跟那個(gè)朋友聯(lián)系多了,慢慢從她那知道了,java原來(lái)如此熱門(mén),當時(shí)心里被現實(shí)撲滅的那股熱情的火又燃燒了起來(lái)。心里充滿(mǎn)激情,準備好好學(xué)習一番,畢業(yè)找個(gè)好工作,讓爸媽和哥哥妹妹都過(guò)上好日子。就這樣大一下半學(xué)期我在圖書(shū)館借書(shū)看依舊看不懂,我的激情在不知不覺(jué)中被消耗著(zhù)。半學(xué)期很快就過(guò)去了。過(guò)的真快,一轉眼,我就大二了,我們終于迎來(lái)的第一門(mén)java課程,javase(java大學(xué)實(shí)用教程),我原充滿(mǎn)激情想好好學(xué),可沒(méi)想到最后老師由于時(shí)間不夠,剩下好多都沒(méi)講。后來(lái)聽(tīng)一位學(xué)長(cháng)說(shuō)的我才明白過(guò)來(lái),他說(shuō)學(xué)校的課程都是奔著(zhù)考研開(kāi)的,所以對專(zhuān)業(yè)課程都不太重視,我把這個(gè)給我那個(gè)同學(xué)說(shuō)說(shuō),當時(shí)還不成熟,還發(fā)牢騷;我同學(xué)告訴我說(shuō),你們學(xué)的專(zhuān)業(yè)課程我們3~4個(gè)月就學(xué)完了,我對學(xué)校的教學(xué)安排有點(diǎn)失望。說(shuō)實(shí)話(huà),當初就開(kāi)始在網(wǎng)上搜培訓機構,真的好多好多,都不知道什么是真什么是假。一次偶然的機會(huì ),看到一位同學(xué)的優(yōu)盤(pán)里面的視頻我激動(dòng)了,我問(wèn)他那是什么,他說(shuō):“java視頻,我哥給我的!蔽揖桶涯切﹤髦堑囊曨l拷貝到了自己的電腦上,這是我第一次真正了解和重視傳智播客,因為在我的印象里沒(méi)有人會(huì )把自己的教學(xué)教材給別人。我感覺(jué)到了它的特別,于是我就開(kāi)始在網(wǎng)上搜關(guān)于傳智的資料。一天一天的慢慢就了解了,可是由于平時(shí)課程比較多,再加上看視頻不做筆記,感覺(jué)看了就忘,所以感覺(jué)效率低,就松懈了。
一直到今年暑假開(kāi)學(xué),開(kāi)始有就業(yè)壓力,開(kāi)始想未來(lái),我去找專(zhuān)業(yè)課老師談話(huà)時(shí),談到自己想去實(shí)訓時(shí),老師給我介紹了一位學(xué)長(cháng),他說(shuō):“你這位學(xué)長(cháng)曾經(jīng)也找過(guò)我說(shuō)想去實(shí)訓,你可以跟他了解了解一下情況!碑斘艺业侥俏粚W(xué)長(cháng)時(shí),他正考黑馬,聽(tīng)到黑馬和傳智是一樣的老師,一樣的培訓,我樂(lè )了,因為我以前都是在網(wǎng)上查,這次有個(gè)具體的人了解,心里就跟堅定了。
在確定了要去傳智播客之后,我就開(kāi)始準備基礎課程了。傳智,我期待已久,希望能在那里從一個(gè)菜鳥(niǎo)變成一個(gè)牛人。傳智,我來(lái)了!
java學(xué)習心得10
1)現在有T1、T2、T3三個(gè)線(xiàn)程,你怎樣保證T2在T1執行完后執行,T3在T2執行完后執行?
這個(gè)線(xiàn)程問(wèn)題通常會(huì )在第一輪或電話(huà)面試階段被問(wèn)到,目的是檢測你對”join”方法是否熟悉。這個(gè)多線(xiàn)程問(wèn)題比較簡(jiǎn)單,可以用join方法實(shí)現。
2)java的堆和棧的區別:
堆:是一個(gè)運行時(shí)數據區,類(lèi)的對象從中分配空間。這些對象通過(guò)new,newarray,anewarray和muitianewarray等指令建立,它們不需要程序代碼來(lái)顯示釋放。堆是由垃圾回收來(lái)負責的,堆的優(yōu)勢是可以動(dòng)態(tài)地分配內存大小,生存期也不必事先告訴編譯器,因為它是運行時(shí)動(dòng)態(tài)分配內存的,Java垃圾收集器會(huì )自動(dòng)收走這些不再使用的數據。但是缺點(diǎn)是:由于是要在運行時(shí)動(dòng)態(tài)分配內存,存取速度較慢。
棧的優(yōu)勢:存取速度比堆要快,僅次于寄存器,棧數據可以共享。缺點(diǎn)是,存在棧中的數據大小與生命期必須是確定的,缺乏靈活性。棧中主要存放一些基本類(lèi)型的變量
(int,short,long,byte,float,double,boolean,char)和對象句柄。
3)java算法:
1、冒泡排序:從頭開(kāi)始,依次對相鄰的兩個(gè)元素進(jìn)行比較,發(fā)現有順序錯誤就將它們調換過(guò)來(lái)!重復地進(jìn)行,直到?jīng)]有元素需要交換。是穩定排序法,最好的時(shí)間復雜度是O(n);
2、快速排序:思想是(Divide)選取一個(gè)基元X開(kāi)始(一般選取數組的第一個(gè)元素),通過(guò)某種分區操作將數組劃分成兩個(gè)部分,左邊部分小于等于X,右邊部分大于等于X。(Conquer)左右兩個(gè)子數組遞歸地調用Divide過(guò)程,(Combine)快排作為就地排序算法,不需要任何合并操作!
3、遞歸:程序調用自身,并非不會(huì )無(wú)休止地調用下去,需要有一個(gè)出口,當滿(mǎn)足條件時(shí)程序也就結束!不然的話(huà),就會(huì )出現程序死循環(huán)。
4)JVM調用GC的頻度還是很高的.,主要兩種情況下進(jìn)行垃圾回收:第一個(gè)就是當應用程序線(xiàn)程空閑,另一個(gè)是java內存堆不足時(shí),會(huì )不斷調用GC,若連續回收都解決不了內存堆的不足。
4)、junit測試的方法的類(lèi)型必須是public ,其他類(lèi)型運行時(shí)會(huì )報錯。方法的返回類(lèi)型也必須是void,并且不能有參數。
5)、List
args = null; args.add(param);//這樣會(huì )報錯
分析原因:List是一個(gè)接口,沒(méi)有實(shí)現是不能使用的,需要ArryList的實(shí)現類(lèi)或者其他實(shí)現類(lèi)才能使用
應該改為:List
args = new
ArrayList
();args.add(param);
6)、如A是父類(lèi),B是繼承于A(yíng),兩者都有構造函數和A有print(),B也覆蓋了A的方法,那么可以A a = new B();此時(shí)a.print();調用的是B的print()方法,如果B的print()沒(méi)有覆蓋父類(lèi)的方法,而是自己創(chuàng )建的print();那么這時(shí)a.print();調用的還是B的print()方法。另外,假設A有print1()方法,B沒(méi)有覆蓋A的print1();這時(shí)a.print1();不會(huì )報錯,它
將調用的是A自己的print1()方法。最后,加入A沒(méi)有了print()方法,而是print()是只有B有,這時(shí)a.print();將直接調用B的print();方法,總結: 對于類(lèi)的繼承,父類(lèi)通過(guò)子類(lèi)實(shí)例化后,構造方法都在先執行父類(lèi)的構造方法,再依次執行子類(lèi)的構造方法。方法的調用原則是先執行子類(lèi)的方法,如果子類(lèi)復寫(xiě)了父類(lèi)的方法,將執行子類(lèi)的方法,如果子類(lèi)沒(méi)有復寫(xiě)父類(lèi)的方法,但是方法重名,也會(huì )只執行子類(lèi)的方法。如果子類(lèi)沒(méi)有對應的方法,那么就執行父類(lèi)的方法!(不要以為子類(lèi)沒(méi)有該方法編譯器會(huì )報錯,因為繼承了父類(lèi)的方法!)請注意:B b = new A();編譯器會(huì )報錯,這也是不合邏輯的!
java學(xué)習心得11
暑期在和一個(gè)老師做項目,前期老師教學(xué),做java web方面的,類(lèi)似于當當購物系統這種...突然發(fā)現,原來(lái)之前看的《think in java》等書(shū)并不夠,很多面向開(kāi)發(fā)的技術(shù)和模塊包括工具從知識到技術(shù)上都很欠缺。
現在有幾個(gè)疑惑,想在小組向各位求助,希望幫忙。
1.首先我想知道是不是做java一般都是web掛鉤,例如現在的.jsp,ssh和html語(yǔ)句和應用都很好的結合,除了web方面,軟件項目方面有沒(méi)有一個(gè)比較明確的方向,如果有,可以告之小弟么~
2.我聽(tīng)說(shuō)做web方面,應該先學(xué)jsp,html,再學(xué)mvc,不然很容易本末倒置,那ssh這樣的技術(shù)學(xué)習,有沒(méi)有一個(gè)比較明確的先后順序。
3.java ee這樣的一個(gè)學(xué)習過(guò)程,能不能有一個(gè)比較好學(xué)習心得可以推薦。我有一定的java基礎,可以編寫(xiě)一些java小程序,但是到了web這些方面,思維總是不夠清晰,很容易混亂,對象方法和類(lèi)之間總是不能很好的去擴展。希望各位幫幫忙,介紹一些學(xué)習心得,包括學(xué)習java技術(shù)的順序,并推薦一些書(shū)吧。
【java學(xué)習心得】相關(guān)文章:
java的學(xué)習心得05-01
java學(xué)習心得多篇感想03-23
java高級簡(jiǎn)歷11-21
java實(shí)習報告08-24
簡(jiǎn)歷java項目經(jīng)驗 java項目經(jīng)驗怎么寫(xiě)范例06-30
Java實(shí)習報告范文03-22
java實(shí)習總結范文09-24
java實(shí)訓報告07-26