當前位置:簡歷模板館>熱點>心得體會>

學Java心得體會5篇

心得體會 閱讀(1.76W)

寫心得體會是需要有極大的耐心的,因爲優秀的心得體會不是那麼容易寫的,出色的心得體會是可以讓你的思想高度得到提升的,這是毋庸置疑的,以下是本站小編精心爲您推薦的學Java心得體會5篇,供大家參考。

學Java心得體會5篇

學Java心得體會篇1

作爲就業培訓,項目的好壞對培訓質量的影響十分大,常常是決定性的作用。這篇文章是關於在學習java軟件開發時練習項目的總結,簡單總結爲以下幾點:

作爲就業培訓,項目的好壞對培訓質量的影響十分大,常常是決定性的作用。這篇文章是關於在學習java軟件開發時練習項目的總結,簡單總結爲以下幾點:

1、項目一定要全新的項目,不能是以前做過的

2、項目一定要企業真實項目,不能是精簡以後的,不能脫離實際應用系統

3、在開發時要和企業的開發保持一致

4、在做項目的時候不應該有參考代碼

長話短說就是以上幾點,如果你想要更多的瞭解,可以繼續往後看。

一:項目的地位

因爲參加就業培訓的學員很多都是有一定的計算機基礎,大部分都具備一定的編程基礎,尤其是在校或者是剛畢業的學生,多少都有一些基礎。

他們欠缺的主要是兩點:

(1)不能全面系統的、深入的掌握某種技術,也就是會的挺多,但都是皮毛,不能滿足就業的需要。

(2)沒有任何實際的開發經驗,完全是想象中學習,考試還行,一到實際開發和應用就歇菜了。

解決的方法就是通過項目練習,對所學知識進行深化,然後通過項目來獲取實際開發的經驗,從而彌補這些不足,儘快達到企業的實際要求。

二:如何選擇項目

項目既然那麼重要,肯定不能隨隨便便找項目,那麼究竟如何來選擇呢?根據java的研究和實踐經驗總結,選擇項目的時候要注意以下方面:

1:項目不能太大,也不能太小

這個要根據項目練習的階段,練習的時間,練習的目標來判斷。不能太大,太大了做不完,也不能太小,太小了沒有意義,達不到練習的目的。

2:項目不能脫離實際應用系統

項目應該是實際的系統,或者是實際系統的簡化和抽象,不能夠是沒有實戰意義的教學性或者是純練習性的項目。因爲培訓的時間有限,必須讓學員儘快地融入到實際項目的開發當中去。任何人接受和掌握一個東西都需要時間去適應,需要重複幾次才能夠真正掌握,所以每個項目都必須跟實際應用掛鉤。

3:項目應能覆蓋所學的主要知識點

學以致用,學完的知識點需要到應用中使用,才能夠真正理解和掌握,再說了,軟件開發是一個動手能力要求很高的行業,什麼算會了,那就是能夠做出來,寫出代碼來,把問題解決了,你就算會了。

4:最後綜合項目一定要是實際應用系統

學員經過這個項目的練習,就要走上實際的工作崗位了,如果這個系統還達不到實際應用系統的標準,學員練習過後也還是達不到企業實際的需要,那麼這個培訓應該說質量就不高了。理想的狀況是這個項目就是實際項目,到時候學員就業到另外一個公司,不過是換個地方幹活而已,完全沒有技能上的問題。

三:java怎麼選擇項目

這個不是靠想象,而是根據實際的情況一步一步分析出來的(呵呵要賣弄一下:這也算是邏輯思維),當然這裏只是討論方法,不涉及具體的項目案例。

我們可以採用倒推的方式來分析:

(1)最終的項目一定是真實的項目,也就是要把學員訓練到能夠獨立開發實際應用,通常我們還不能選最簡單的項目,因爲學員的吸收還要有一個折扣,所以最終的項目應該選實際項目中中等難度的項目

(2)最終項目定下來過後,開始分解這個項目,看看爲了達到完成這個項目需要哪些技術和知識點,以及每部分知識點的深度,然後定出每個分階段的任務

(3)然後開始選擇分階段的項目,分階段的項目應該比剛纔分析出來的分階段任務稍稍複雜點,這樣才能達到訓練的目標。定下分階段項目後,同樣去分解,定出爲了完成他所需要的各部分知識點和深度。

(4)然後是選擇上課期間的演示項目,演示的項目是爲了做分階段項目服務的,可以認爲是分階段項目的分階段項目。

(5)最終把要求掌握的知識點和要求掌握的深度,分散到日常教學和練習中。

學Java心得體會篇2

1.首先有玩家類,窗口類,主函數類和圖片文件(.jpg)

2.然後是先行知識,創建窗口(jframe),設置窗口屬性;窗口上不能直接添加組件(鍵盤監聽等),所以先在窗口上添加容器(jpanel),將組件(keyadapter)添加到容器;

3.畫出玩家:重寫窗口類中的paintcomponent方法,創建graphics對象,調用drawimage方法可畫圖,調用drawstring方法可標註其名字

4.移動:在窗口類中創建鍵盤監聽抽象類keyadapter(實現了接口的部分方法但無具體操作),需要重寫該類的keypressed方法和keyrleased方法,賦給按鍵變量真值,隨後將該對象添加到窗口

5.隨機生成初始座標:在開始遊戲後隨機給定玩家的x、y座標,創建random對象,調用random.nextint(n)方法,n代表從[0,n)區間的隨機值。

6.最後通過一個timer.schedule(匿名內部類對象,指定延遲後開始,週期)方法來實現移動效果。匿名內部類【timertask的子類,重寫了run方法,包括repaint方法(實則調用paintcomponent)和yidong方法】來重畫、監聽鍵盤的指令()並作出相應動作

下面是源代碼(有註釋):

容器類

package a;

import javax.swing._;

import java.awt._;

import java.awt.event.keyadapter;

import java.awt.event.keyevent;

import java.util.random;

import java.util.timer;

import java.util.timertask;

import static a.newgame.frame;

//新建面板

public class war extends jpanel {

private timer timer;

private boolean sup, sdown, sright, sleft;//右飛機按鍵變量

private boolean sw, sd, ss, sa;//左飛機按鍵變量

private player1 player1 = new player1();

private player2 player2 = new player2();

private imageicon img11 = player1.img1;

private imageicon img22 = player2.img2;

@override

protected void paintcomponent(graphics g) {

super.paintcomponent(g);//此句調用父類方法進行界面重繪,恢復到某個界面,下面的步驟再畫玩家;如果註釋掉會有重影

//在面板上畫出玩家

g.drawimage(img11.getimage(), player1.x, player1.y, 100, 100, this);

g.drawstring("p1", player1.x, player1.y);

g.drawimage(img22.getimage(), player2.x, player2.y, 100, 100, this);

g.drawstring("p2", player2.x, player2.y);

}

public void startgame() {

timer = new timer();

timer.schedule(new timertask() {//匿名內部類(timertask的子類)

@override

public void run() {//重寫run()函數

repaint();//調用重寫的paintcomponent來畫兩飛機

yidong();//並每次判斷按下哪個鍵,然後移動

}

}, 0, 50);//安排指定的任務從指定的延遲後開始進行重複的固定延遲執行。50毫秒執行一次

}

public void yidong() {

//因爲每打印一次可能用戶按下一個飛機的幾個鍵或者兩個飛機的幾個鍵,這些是都要檢測到的,改成elseif後只能檢測到一個鍵,無法實現兩架飛機同時多方向移動

if (sw && player1.y > 0) {

player1.y -= player1.speed;

}

if (sa && player1.x > 0) {

player1.x -= player1.speed;

}

if (ss && player1.y < 700) {

player1.y += player1.speed;

}

if (sd && player1.x < 900) {

player1.x += player1.speed;

}

if (sup && player2.y > 0) {

player2.y -= player2.speed;

}

if (sdown && player2.y < 700) {

player2.y += player2.speed;

}

if (sleft && player2.x > 0) {

player2.x -= player2.speed;

}

if (sright && player2.x < 900) {

player2.x += player2.speed;

}

}

public void act() {

//隨機生成兩飛機的初始座標

random rd = new random();

player1.x = rd.nextint(900);

player1.y = rd.nextint(700);

player2.x = rd.nextint(900);

player2.y = rd.nextint(700);

//開始遊戲後獲得計時器開始監聽並重畫

startgame();

//keyadapter是keylistener的實現類,重寫了所有方法但沒有具體操作

keyadapter keyadapter = new keyadapter() {

@override

public void keypressed(keyevent e) {

super.keypressed(e);

int key = e.getkeycode();

switch (key) {

case keyevent.vk_w:

sw = true;

break;

case keyevent.vk_a:

sa = true;

break;

case keyevent.vk_d:

sd = true;

break;

case keyevent.vk_s:

ss = true;

break;

case keyevent.vk_right:

sright = true;

break;

case keyevent.vk_left:

sleft = true;

break;

case keyevent.vk_down:

sdown = true;

break;

case keyevent.vk_up:

sup = true;

break;

}

}

@override

public void keyreleased(keyevent e) {

int key = e.getkeycode();

switch (key) {

case keyevent.vk_w:

sw = false;

break;

case keyevent.vk_a:

sa = false;

break;

case keyevent.vk_d:

sd = false;

break;

case keyevent.vk_s:

ss = false;

break;

case keyevent.vk_right:

sright = false;

break;

case keyevent.vk_left:

sleft = false;

break;

case keyevent.vk_down:

sdown = false;

break;

case keyevent.vk_up:

sup = false;

break;

}

}

};

frame.addkeylistener(keyadapter);

}

}

主函數類:

package a;

import javax.swing._;

public class newgame {

public static jframe frame;

public static void main(string[] args) {

frame = new jframe("逃出生天");

frame.setsize(1000,800);

//絕對佈局組件位置和形狀不會隨窗體改變,不設置佈局管理器就可以使用setbounds()來控制位置

frame.setlayout(null);

//設置窗體關閉程序自動關閉

frame.setdefaultcloseoperation(windowconstants.exit_on_close);

//窗體居中顯示

frame.setlocationrelativeto(null);

//添加主面板

war war = new war();

frame.add(war);

//設置面板大小

war.setbounds(0,0,1000,800);

//設置主面板可見

frame.add(war);

frame.setvisible(true);

war.act();

}

}

1234567891011121314151617181920212223242526

玩家類:

玩家1

package a;

import javax.swing._;

public class player1 {

public int x;

public int y;

public int speed = 50;

public imageicon img1 = newimageicon("d:program_filesjetbrainsworkspace_ideasrcaplane.jpg");

}

12345678910

玩家2

package a;

import javax.swing._;

public class player2 {

public int x;

public int y;

public int speed = 50;

public imageicon img2 = newimageicon("d:program_filesjetbrainsworkspace_ideasrcaplane2.jpg");

}

做成一個桌面小遊戲:

點“+”號

選好主函數類後點ok

然後點build中的build artificts

選擇jar包點build即可

然後jar包就在你的workspace生成了,找到它發送桌面快捷方式,更改圖標名字即可

圖片轉換成圖標的網站附上

學Java心得體會篇3

java學起來很有趣,通過學習java可以提高自己的邏輯思維能力。在學習java期間我們做了一些程序,我們班的同學也都積極準備,完成的還不錯!在做程序時,我遇到了一些難題,有時也會出現錯誤,耐心的調試解決問題,我知道只有堅持下去纔會成功。

因爲java是一種面向對象的編程語言,剛接觸java的人可能會感覺比較抽象,不過沒關係不用着急,上課的時候認真聽老師講解,一些概念知識慢慢去理解,課後多做練習,熟能生巧,哪怕是你的記性再好,課後不去強化練習也沒用,只有多練了,當你在做項目時你才能很熟練的寫出你想要代碼。平日在練習時若遇到不會的題目或是在項目中遇到解決不了的問題,首先不要急着去問老師,或是急着上百度搜答案,那樣即使你得到了正確答案,以後在其它地方遇到同樣的問題,你還是不知道怎麼解決!

我覺得把java學會的關鍵一點就是堅持練習。學習java時每天必須保證一定量的練習,我們老師也說學習編程語言沒有捷徑可走。真的,只有每天反覆操作了,經常寫代碼了,我們在遇到問題時纔有一定的思路。欲速則不達,學習編程語言需要一個比較漫長的階段,不能一步登天,這需要一個過程,在這個過程中慢慢積累經驗,紮實基礎。不要以爲寫出了一個簡單的小程序,就認爲自己已經學的很好了,這只不過是在你學習編程過程中一個小小的實踐。不要滿足於現狀,要不斷完善自己的知識體系,善於總結實踐經驗。要端正自己的學習態度,是主動去學,而不是被動!提高自學能力。學習編程的祕訣是:編程、編程、再編程。不僅要多實踐,而且要快實踐。另外好多軟件需要到英文網站下載,你要能夠找到它們,這些是最基本的要求。英語好對你學習有很大的幫助。

學習java這段時間,有時候會覺得有點苦,但是我覺得正是有了你奮鬥時的苦,才能換來學成後的甜。當你經過認真寫代碼做完一個項目時,你會有一種成就感。心裏有一種說不出的喜悅之情。

學習java靠得是韌勁,靠得是拼勁,靠得是堅持不懈。如果做好了這幾點,我想java對你來說不會太難。還有,你自己要有信心,相信自己能學會。

學Java心得體會篇4

終於搞定了這份實訓報告,受益匪淺啊!一開始想做計算器那個課題,原因很簡單,就是因爲我感覺那個課題很簡單,在百度裏一搜就搜到了一模一樣的源程序。只是感覺沒什麼意思,那個界面也不是很好看,又不好玩。所以就做了現在這個猜數遊戲。一直想編個遊戲程序,於是就到網上去搜代碼,一下子就搜到了,而且代碼很少,簡單易懂。程序是弄好了,那麼簡短的程序寫起報告就犯難了!不得不把程序再添加些模塊,充實充實。

這也讓我感覺實訓遠比想像的難度大,不是網上隨便搜一下就可以交差的!不僅需要自己看懂代碼,還需要根據自己的需要添加模塊,充實代碼。

從網上搜的代碼都是字符界面的,老師說既然字符界面的沒挑戰性,那就做圖形界面的好了。做圖形界面就有點犯難了,首先沒有什麼程序可以參照了,必須自己充分理解字符界面的源代碼,然後逐步修改完善。

我依據課本上的gui章節設計了此次的java簡單程序,基本實現了課題的要求,還添加了圖片以增加視覺效果,以及確定按鈕方便用戶確定輸入數字。

通過這次實訓我的體會歸納爲以下4點:

1、態度第一。擺正自己的心態,不要以爲什麼東西上網搜搜就可以了,一定要有自己的東西。只有自己付出過,當程序運行成功時的那種喜悅纔會令自己有一種莫名的自豪感。態度決定一切!

2、興趣是關鍵。我的學習完全是興趣導向的,所以壓力並不大。因爲有興趣,所以我會很想充分理解一切細節。又因爲理解,所以許多原本片片斷斷的知識都可以漸漸互相融會貫通,累積技術能量,理論和實務之間的藩籬被打破了,學習效率倍增。學習並快樂着!

3、敢於挑戰。不安於現成的程序,要敢於用多種方法實現一個目的。現在的網絡科技很發達,想要一個源程序的確很簡單,所以很多人都是在自己都不明白題目要求時,就可以在網上搜到一模一樣的代碼,根本沒有自己的東西。挑戰自我是項艱鉅的任務。只有堅持自己多看代碼多寫程序纔會有更多的收穫。

4、不懈追求。要對源代碼進行不斷地完善,要儘可能地實現課題所要求的功能。對初學者來說,大量地寫程序是必要的,但過了某個階段之後,寫程序所帶來的技術能力成長已經到了極限,還不如多花一點時間看書,學新技術和新觀念。可以從實現源程序功能着手,比如添加寫模塊啊什麼的,實現更多功能。看着自己編的程序能成功運行,這樣自己會更感興趣,也就會樂此不疲。

學Java心得體會篇5

在上學期的最後一週和本學期的第一週,我和同組的學員在學校機房進行了java暑期實訓,現在已經結束了。

回首上學期的java學習,重點還是在學習概念等一些常識性的東西,application應用程序和applet小程序,它的開發工具、數據類型、變量、接口、輸入輸出流等。學會分析異常,拋出異常,後期主要是小程序運用,gui界面設計和事件。我覺得這兩種程序結構有很大的不同,不管是體系結構還是運行方式,都有很大的區別,而我主要偏向於小程序的學習。因爲我感覺它實用性比較大,可以做出很多不錯的遊戲、運用程序等,而且它比較靈活。當然學知識不能僅憑自己的愛好和一時興趣,要一步一個腳印、認認真真、踏踏實實,理論與實踐相結合。在掌握課本實例和內容之後,要有一定的擴展閱讀和課外學習,充分全面的瞭解java的應用和擴展運用。在我所學的語言當中,我自認爲java是一門比較強大的面向對象編程語言。不僅僅因爲它的跨平臺性,更多的是因爲它的靈活多變和實用性,而且它比較的經典和強悍。

這次實訓,面對老師佈置的任務,一開始有些慌張和無措。不過,事後我首先想到這和課本上的某些知識具有結合點,回憶和分析了老師教過的算法和具體實施方法,並綜合考慮了其他的方面。在編寫時,一個小小的符號、一個常量變量的設定,這都無不考量着我的細心和嚴謹。所以學習java,不僅對我們以後學習其他語言有很大

的好處,而且也讓我們知道了和理解了作爲一個編程人員首先應具有的良好心理素質,那就是冷靜思考和專心致志。

在此次實訓中,我意識到一個好的編程人員要善於溝通和團結拼搏。實訓結束後,我覺得要學好一門計算機語言必須牢記以下幾點:

1. 態度第一 2.興趣是關鍵 3.敢於挑戰 4.不懈追求

實訓結束了,大家都有一種解脫的感覺。當然我想自己更多的是興奮和一點點的成就感。現在我覺得,學習java要不斷的複習和運用,做到舉一反三,將所學知識充分融入到平時的學習生活中去,從而爲以後的工作打好堅實的基礎。感謝學校和老師能夠爲我們提供這次機會,讓我們更好的掌握和了解java這門語言。

通過這次實訓,我真的從中學到了很多東西。我對這個介於人類與非人類之間的計算機編程語言有了較上學期更進一步的認識。其間開心過、鬱悶過、無奈過、彷徨過……隨着實訓的圓滿成功與實驗報告的順利完成,有點微微的自豪感使人難忘。至於我做的程序,還不是很完善,所以我將一直去完善它,不斷地學習下去。伴隨着學習的深入,我發現高深的東西還有很多很多,等待着我自己去發掘。對於java語言,我會更加努力。