java web 編程課程總結(jié)
《javaweb編程課程總結(jié)》
這次的課程和以往的課程有一些不同。一是,需要理解的概念、專業(yè)術(shù)語(yǔ)很多。比如,JavaWeb里引入了Web體系結(jié)構(gòu)、MVC設(shè)計(jì)模式等的概念,出現(xiàn)了Servlet、JavaBean、Scriptlet、JSTL等無(wú)法替代的術(shù)語(yǔ);二是,這次學(xué)習(xí)的內(nèi)容和Internet接軌,十分實(shí)用。學(xué)完JSP,既復(fù)習(xí)了Java的知識(shí),又具備了做網(wǎng)站的能力;叵胍幌逻@個(gè)階段的過(guò)程。
第一是對(duì)Web應(yīng)用程序的概述。我從中了解到Web應(yīng)用程序的三層體系結(jié)構(gòu):表示層、業(yè)務(wù)層、數(shù)據(jù)存取層。從而想到了學(xué)數(shù)據(jù)庫(kù)設(shè)計(jì)時(shí)的數(shù)據(jù)庫(kù)設(shè)計(jì)三大范式,它們同是敘述在編寫代碼時(shí)應(yīng)做的規(guī)劃和應(yīng)遵循的規(guī)則,這種規(guī)劃在以后的學(xué)習(xí)中時(shí)有出現(xiàn),說(shuō)明編程并不是一味地進(jìn)行循環(huán)判斷、死記硬背,而需要在技術(shù)上有所加強(qiáng)、在效率上有所提高。做任何事都是如此,事先必須有目標(biāo)、有計(jì)劃,有統(tǒng)籌,這樣執(zhí)行時(shí)才不會(huì)盲目,才不會(huì)事倍功半。學(xué)習(xí)編程對(duì)綜合能力都是一種培養(yǎng)。
接下來(lái)是JSP知識(shí)。要學(xué)JSP,就必須會(huì)HTML,如果HTML學(xué)不通,這對(duì)以后的學(xué)習(xí)都是一個(gè)瓶頸。基礎(chǔ)一定要打扎實(shí),吃透,否則上層建筑的建起就不會(huì)很順利甚至沒(méi)法起步。然后是JavaBean。以下是個(gè)人對(duì)JavaBean的一點(diǎn)學(xué)習(xí)體會(huì)。JavaBean里有set()和get()方法,用這些方法能很容易地傳值,邏輯上更標(biāo)準(zhǔn),代碼看起來(lái)也更規(guī)范。但set()和get()方法只是用來(lái)對(duì)屬性進(jìn)行操作的,所以如果是進(jìn)行復(fù)雜的邏輯或?qū)?shù)據(jù)庫(kù)進(jìn)行操作等,那么就不要寫成set()和get()方法,只用一個(gè)有返回值的方法就足以。這樣直觀方便,且符合規(guī)范?傊,set()和get()方法不要沒(méi)有效率地濫定義。
接著是Servlet。Servlet是一個(gè)用Java編寫的應(yīng)用程序,在服務(wù)器上運(yùn)行,用來(lái)處理請(qǐng)求和響應(yīng),也可以單獨(dú)做為一個(gè)Web頁(yè)面。
然后講的是標(biāo)簽,包括自定義標(biāo)簽和JSP標(biāo)準(zhǔn)標(biāo)簽庫(kù)。用一般的Java代碼都幾乎能實(shí)現(xiàn)它們的功能。它們的好處是提高了代碼的重用性。標(biāo)準(zhǔn)標(biāo)簽庫(kù)里有幾個(gè)比較有用的標(biāo)簽,比如forTokens和setBundle,這兩個(gè)標(biāo)簽的作用是一般代碼實(shí)現(xiàn)不了的。
通過(guò)學(xué)習(xí)JSP,我了解了更多的編程概念和理念,更增強(qiáng)了信心,只要有克服困難的勇氣和決心,就沒(méi)有什么難關(guān)無(wú)法克服。我會(huì)抱著十足的勇氣和決心向下一個(gè)階段挑戰(zhàn)。從一期學(xué)到現(xiàn)在,我對(duì)Java有了一個(gè)比較具體的認(rèn)識(shí)。
Java的特點(diǎn)是:面向?qū)ο、跨平臺(tái)、可移植。面向?qū)ο蟮暮x是,這種語(yǔ)言可以形象地模擬現(xiàn)實(shí)生活中的實(shí)物。在面向?qū)ο蟮恼Z(yǔ)言中,“類”是對(duì)一組實(shí)物的共同特征描述,“對(duì)象”是類的實(shí)例,同一個(gè)類的一些對(duì)象具有類所定義的共同特點(diǎn)。面向?qū)ο蟮娜筇攸c(diǎn)是“封裝”、“繼承”和“多態(tài)”。封裝的表現(xiàn)有三,一是它把數(shù)據(jù)成員組織在一起,形成一個(gè)整體;二是它可以隱藏細(xì)節(jié),簡(jiǎn)化操作,比如,聲明一個(gè)JTextField類的對(duì)象,你可以實(shí)現(xiàn)這個(gè)API中所有的功能,但看不到這個(gè)類的代碼;你可以直接調(diào)用它的setText()、getText()等方法,而不用考慮它具體是怎么實(shí)現(xiàn)的。三是它可以保護(hù)數(shù)據(jù),比如,一個(gè)類里有privateintage的屬性,產(chǎn)生一個(gè)setAge(intageTemp)的方法,在這個(gè)方法里對(duì)傳入的參數(shù)進(jìn)行檢驗(yàn),如果不符合要求,就不對(duì)age賦值。
擴(kuò)展閱讀:JAVA編程實(shí)訓(xùn)課程學(xué)期總結(jié)
Java編程實(shí)訓(xùn)課程
學(xué)期總結(jié)
姓名:魏永進(jìn)______________學(xué)號(hào):_201*022121______________班級(jí):___09計(jì)算機(jī)多媒體技術(shù)____________
成績(jī):_______________
成績(jī)登記表
次數(shù)自評(píng)組評(píng)課堂
安徽中澳科技職業(yè)學(xué)院計(jì)算機(jī)系
指導(dǎo)教師:魏曉東
12345678910111213系合總數(shù)計(jì)分
JAVA學(xué)習(xí)總結(jié)論文
一對(duì)JAVA的入門認(rèn)識(shí)及了解
JAVA總的來(lái)說(shuō)和C++、.NET、DELPHI等語(yǔ)言是同一祖先生出來(lái),所以熟悉這類編程的人學(xué)起來(lái)特別容易,它們都是面向?qū)ο蠡幊陶Z(yǔ)言。學(xué)習(xí)任何語(yǔ)言(包括英語(yǔ)),基礎(chǔ)一定要打好,沒(méi)有學(xué)會(huì)走路跑步不可能快吧。所以學(xué)習(xí)JAVA一定要先把JAVA的幾個(gè)基本組成元素學(xué)好。以下是我總結(jié)出來(lái)的學(xué)習(xí)順序和注意事項(xiàng):
1、數(shù)據(jù)類型JAVA是一種強(qiáng)類型語(yǔ)言,各種類型不會(huì)自動(dòng)轉(zhuǎn)換,使用前必須先定義。2、方法方法相當(dāng)于定義一個(gè)"宏"、一個(gè)"函數(shù)",方法的定義格式為:"說(shuō)明符修飾符返回值方法名(參數(shù)){方法體}。"
在學(xué)習(xí)方法的時(shí)候要注意"說(shuō)明符、"修飾符"、"返回值"這三樣?xùn)|西。
我們?cè)谡{(diào)用JAVA的自帶的"類"里面的"方法"的時(shí)候,我們一開(kāi)始是不用看懂這些方法里面寫什么(當(dāng)然,你能看懂是最好)。我們只要知道,使用了這個(gè)方法后,"返回值"的"類型"說(shuō)明
3、類在JAVA中最經(jīng)常聽(tīng)到詞,也是最麻煩的東西,類的定義格式為:說(shuō)明符class類名extends超類名implements接口名{主體}
4、變量常量JAVA的常量名一般用全大寫字母表示,并且為了節(jié)省內(nèi)存,一般定義為靜態(tài)(JAVA程序中的名字我們經(jīng)常有個(gè)默認(rèn)的規(guī)則,類名所有單詞第一個(gè)字母大寫,方法名第二個(gè)單詞開(kāi)始第一個(gè)字母大寫,變量名小寫,這樣我們一看程序就非常清楚了,從小養(yǎng)成良好的習(xí)慣嘛,呵呵),變量的定義格式為:"修飾符數(shù)據(jù)類型變量名"
變量在類中定義(不在方法體中的部分稱為域)和在方法體中定義是不同的(在方法體中定義不需要修飾符)。學(xué)習(xí)變量的時(shí)候要注意兩個(gè)特殊的東西"this"和"super"。同時(shí)我們就要學(xué)習(xí)什么叫"覆蓋"、"重載"。
5、控制流所有的編程語(yǔ)言的控制語(yǔ)句無(wú)非就是幾個(gè)ifelseforwhiledoswitch。6、接口:一個(gè)抽象的東西,接口可以多繼承,解決了類只能單繼承的問(wèn)題。接口的定義格式為:
說(shuō)明符interface接口名{主體},
接口內(nèi)的方法都是沒(méi)有主體的,只有常量或變量。當(dāng)類使用接口的時(shí)候,一定要"覆蓋"接口的方法。7、線程:線程是個(gè)比較復(fù)雜的東西,例如一個(gè)賽馬程序有七匹馬賽跑,就有七個(gè)線程,看起來(lái)好象是同時(shí)在跑,其實(shí)是計(jì)算機(jī)分配不同的時(shí)間段讓七個(gè)線程運(yùn)行。我們初學(xué)者的程序可能還用不上。
到這里為語(yǔ)言本身的學(xué)習(xí)是后繼學(xué)習(xí)的基礎(chǔ)。任何一門語(yǔ)言都是知識(shí)的濃縮,是設(shè)計(jì)者智慧的結(jié)晶,更何況是作為高級(jí)語(yǔ)言Java。作為初學(xué)者,我們確實(shí)應(yīng)該腳踏實(shí)地的從語(yǔ)言層面開(kāi)始學(xué)起,為進(jìn)一步學(xué)習(xí)打好基礎(chǔ)。所以,我計(jì)劃利用假期拜讀ThinkinginJava。學(xué)習(xí)Java要充分利用資源。最重要的資源是JDK源碼,其次就是opensource。當(dāng)然,動(dòng)手寫程序才是硬道理。
2、學(xué)習(xí)面向?qū)ο笳Z(yǔ)言一定要結(jié)合設(shè)計(jì)模式。語(yǔ)言本身只是工具,如何利用好工具表達(dá)我們的想法,就需要具有專業(yè)思維。設(shè)計(jì)模式就是我們應(yīng)該具有的專業(yè)思維。
3、多態(tài)性是面向?qū)ο蟪绦蛟O(shè)計(jì)的核心!在對(duì)Java語(yǔ)言和設(shè)計(jì)模式有簡(jiǎn)單的了解后,我覺(jué)得多態(tài)性是OOP核心中的核心,正是因?yàn)槎鄳B(tài)具有的表示獨(dú)立性,才使得程序具有很好的可擴(kuò)展性和可復(fù)用性。止,JAVA的基本概念我們有一定的了解了,我們就開(kāi)始研究JAVA的
類了。
二.如下是運(yùn)作坦克大戰(zhàn)的步驟和設(shè)計(jì)方法:
2.2設(shè)計(jì)方法2.2.1構(gòu)建游戲主類
在主類中構(gòu)造一個(gè)主Frame框架,設(shè)置它的大小和位置,并將其顯示。在主類中編寫一段代碼,構(gòu)造一個(gè)窗口。并添加窗口關(guān)閉的處理事件,將窗口設(shè)置成打小不可變。主要代碼如下:
this.addWindowListener(newWindowAdapter(){
});
this.setResizable(false);
}publicvoidwindowClosing(WindowEvente){System.exit(0);
2.2.2構(gòu)建坦克類Tank
構(gòu)造主窗口中所需要的Tank類,并將坦克加到窗口中,實(shí)現(xiàn)坦克的四個(gè)方向的移動(dòng)
創(chuàng)建一個(gè)坦克類,用畫圖工具構(gòu)造出簡(jiǎn)單的圖形代表坦克,并將坦克加入到主窗口當(dāng)中。主要代碼如下:
publicclassTank{}
publicvoiddraw(Graphicsg){}
Colorc=g.getColor();g.setColor(Color.RED);g.fillOval(x,y,30,30);g.setColor(c);
publicclassTankClientextendsFrame{
publicvoidpaint(Graphicsg){myTank.draw(g);}
}讓坦克朝四個(gè)方向運(yùn)動(dòng)起來(lái),在主類TankClient中啟用多線程機(jī)制,讓系統(tǒng)不斷的進(jìn)行重畫。并在Tank類中建立處理按鍵的方法,實(shí)現(xiàn)坦克的手動(dòng)移動(dòng);根據(jù)坦克類修改TankClient主類,在主類中注冊(cè)事件監(jiān)聽(tīng)器,并調(diào)用Tank類中的方法。主類TankClient中使用雙緩沖機(jī)制消除坦克的閃爍現(xiàn)象。在Tank類當(dāng)中添加的按鍵方法,代碼如下:
publicvoidkeyPressed(KeyEvente){
}intkey=e.getKeyCode();switch(key){
caseKeyEvent.VK_LEFT:
bL=true;break;
}locateDirection();
publicvoidkeyReleased(KeyEvente){
intkey=e.getKeyCode();switch(key){
caseKeyEvent.VK_LEFT:
bL=false;break;
}}locateDirection();
TankClient類中的多線程機(jī)制的主要代碼如下:
newThread(newPaintThread()).start();
privateclassPaintThreadimplementsRunnable{
publicvoidrun(){
while(true){
repaint();
try{}
}}Thread.sleep(50);
}catch(InterruptedExceptione){}
e.printStackTrace();
2.2.3添加炮彈Missile類
在Missile類當(dāng)中添加x,y,dir等屬性以及常量。在Missile類當(dāng)中添加構(gòu)造方法,draw方法等必要方法。根據(jù)不同的方向,子彈要進(jìn)行不同的運(yùn)動(dòng)。在TankClient當(dāng)中new一顆子彈出來(lái)。
2.2.4實(shí)現(xiàn)坦克的互相攻擊
(1)讓主戰(zhàn)坦克打出炮彈
1)在Tank類當(dāng)中增加對(duì)J鍵的處理,使每按下J鍵的時(shí)候,坦克打出一發(fā)炮彈。
caseKeyEvent.VK_J:
fire();break;
2)根據(jù)“坦克打出炮彈”這句話,確定Tank當(dāng)中的fire方法,其返回值為Missile。
publicMissilefire(){
Missilem=newMissile(x,y,ptDir);
}returnm;
3)為了解決坦克停下來(lái)也能開(kāi)火的問(wèn)題給坦克加一炮筒,根據(jù)炮筒方向和
位置設(shè)定子彈的方向和位置并new出來(lái),然后返回。每次move之后根據(jù)Tank的新方向確定炮筒的方向。
if(this.dir!=Direction.STOP){}
this.ptDir=this.dir;
4)為了能夠打出多發(fā)炮彈,使用容器填裝多發(fā)炮彈,每當(dāng)抬起J鍵的時(shí)候就往容器中加入新的炮彈
Listmissiles=newArrayList();
5)解決炮彈不消亡的問(wèn)題,加入控制炮彈生死的量live(Missle),當(dāng)炮彈已經(jīng)死去就不需要對(duì)其重畫,當(dāng)炮彈飛出邊界就死亡,當(dāng)炮彈死亡就從容器中移去。
if(x<0||y<0||x>TankClient.GAME_WIDTH||y>TankClient.GAME_HEIGHT){
live=false;
}publicvoiddraw(Graphicsg){
if(!live){
tc.missiles.remove(this);return;
}}(2)實(shí)現(xiàn)坦克的互相開(kāi)火
1)加入?yún)^(qū)分?jǐn)澄业腂oolean量good,根據(jù)敵我設(shè)置不同的坦克2)更新Tank的構(gòu)造函數(shù),加入good3)在TankClient中new出敵人并畫出
4)在Missile中加入hitTank(Tankt)方法,返回布爾類型
5)借用碰撞檢測(cè)的輔助類Rectangle,為Tank和Missile類都添加getRect()方法。
publicRectanglegetRect(){
returnnewRectangle(x,y,WIDTH,HEIGHT);
}6)增加控制坦克生死的Boolean量live,如果live為false就不畫了。當(dāng)炮彈擊中敵人坦克時(shí),坦克被打死,子彈也死去。
publicbooleanhitTank(Tankt){
if(this.getRect().intersects(t.getRect())&&t.isLive()){
}returnfalse;
t.setLive(false);this.live=false;returntrue;
}(3)添加多輛坦克
建一容器向里面添加敵人的Tank
Listtanks=newArrayList();添加Tank
for(inti=0;i38)this.fire();
2)讓敵方坦克發(fā)射炮彈。本軍坦克不打本軍坦克,向炮彈添加表示好壞的Boolean量good。
3)修改炮彈的構(gòu)造方法;修改Tank的fire方法;修改hitTank方法,坦克只能打擊對(duì)方。
2.2.5創(chuàng)建Explode類
(1)加入位置屬性x,,y,加入Boolean變量live炸
(3)在TankClient當(dāng)中創(chuàng)建容器,將爆炸存放與容器當(dāng)中,擊斃一輛坦克就產(chǎn)生爆炸,將爆炸逐一畫出(如果死去就去除)Missile類當(dāng)中的hitTank()方法
2.2.6添加藥箱BloodBox
創(chuàng)建BloodBox類添加血藥箱,加入必要的屬性和方法,讓藥箱沿著固定的軌跡運(yùn)動(dòng)。
privatestaticRandomr=newRandom();intstep=0;
privateint[][]pos={{100,120},{200,300},{760,570},{280,570},{600,40},{700,60},{680,225}};
publicBloodBox(){}
x=pos[0][0];y=pos[0][1];
privatevoidmove(){
step++;
if(step==pos.length){
step=0;
}}x=pos[step][0];y=pos[step][1];
當(dāng)主戰(zhàn)Tank與藥箱接觸的時(shí)候,血自動(dòng)加滿。
publicbooleaneat(BloodBoxb){
if(this.live&&b.isLive()&&this.getRect().intersects(b.getRect())){
this.life=100;b.setLive(false);
}returntrue;
returnfalse;
}2.2.7添加Home
建立Home類,在Home類中為家添加普通墻壁,當(dāng)墻壁中的home被打掉后游戲結(jié)束。
2.2.8添加障礙物
(1)添加金屬墻
1)建立MetalWall類,建立MetalWall對(duì)象,用繪圖工具畫出來(lái)
2)讓每一顆子彈打擊每一堵墻,添加hitMetalWall()方法。當(dāng)子彈接觸到墻時(shí)子彈消失。
publicbooleanhitMetalWall(MetalWallw){
if(this.live&&this.getRect().intersects(w.getRect())){
}}returnfalse;
this.live=false;returntrue;
3)讓坦克不能穿過(guò)墻。添加記錄上一次位置的oldX,oldY;修改構(gòu)造函數(shù)每次move之前記錄上一次的位置。添加stay方法記錄移動(dòng)之前的位置,當(dāng)坦克撞到檣時(shí)回到移動(dòng)前的位置,即當(dāng)碰到墻時(shí)stay。
publicbooleancollidesWithMetalWall(MetalWallw){
}if(this.live&&this.getRect().intersects(w.getRect())){}
returnfalse;
this.stay();returntrue;
(2)添加普通墻
建立OrdinaryWall類,往里添加相應(yīng)屬性以及相應(yīng)方法。具體步驟參考2.7.1中
添加金屬墻。不同之處在于Missile類當(dāng)中的hitOrdinaryWall()方法,擋子彈接觸到墻壁時(shí),墻壁消失。(3)添加河水River
(4)添加樹(shù)林
創(chuàng)建Tree類,用畫圖工具畫出代表森林的模塊,加入主窗口當(dāng)中。(5)加入圖片替換主窗口中的各對(duì)象
再將圖片加入時(shí),運(yùn)用了系統(tǒng)提供的工具包ToolKit,用工具包拿到所需圖片后再將它放入容器中。然后再做相應(yīng)的替換。
三:JAVA的學(xué)習(xí)心得
經(jīng)過(guò)一年的學(xué)習(xí),Java的課程已經(jīng)結(jié)束了?墒俏抑,學(xué)習(xí)java的路上,我們才剛剛起步。學(xué)Java之前我聽(tīng)許多人說(shuō)Java很難,學(xué)了之后我感覺(jué)Java確實(shí)不容易,想學(xué)好它并非易事。我覺(jué)得學(xué)Java必須做到三步走:1.課前認(rèn)真預(yù)習(xí)。2.課上認(rèn)真聽(tīng)講。3.課下認(rèn)真復(fù)習(xí)。
我想只有做好這三步,自己才能跟上老師的步子。
回想一下學(xué)習(xí)Java時(shí)的情景,我仍然興奮不已。其實(shí)在剛接觸Java時(shí),自己確實(shí)有點(diǎn)暈,但經(jīng)過(guò)一段時(shí)間學(xué)習(xí),逐漸走出了迷霧。剛開(kāi)始學(xué)習(xí)循環(huán)時(shí),我覺(jué)得那一塊很不熟悉,做題時(shí),思路半天才理出來(lái)。經(jīng)過(guò)一段時(shí)間的練習(xí),我漸漸的走出了第一個(gè)迷霧。但是到了第六章,我徹底暈了,看書(shū)看得也一知半解暈暈乎乎的。類與對(duì)象是在學(xué)了第七、八章后弄清的。到了最后一章,學(xué)到字符串時(shí),傳遞參數(shù)真讓我暈啊,然后我又是練習(xí),最后略微弄明白了點(diǎn)。經(jīng)過(guò)三起三落,經(jīng)過(guò)幾個(gè)迷霧之后,我對(duì)Java也有了更為深入的了解,就學(xué)會(huì)了Java。
Java學(xué)起來(lái)很有趣,通過(guò)學(xué)習(xí)Java可以提高自己的邏輯能力。在學(xué)習(xí)Java期間我們做了一些程序,我們班的同學(xué)也都積極準(zhǔn)備,完成的還不錯(cuò)!在做程序時(shí),我遇到了一些難題,有時(shí)也會(huì)出現(xiàn)錯(cuò)誤,時(shí)間長(zhǎng)了弄得我心煩意亂,但是我知道只有堅(jiān)持下去才會(huì)成功。因?yàn)镴ava是一種面向?qū)ο蟮木幊陶Z(yǔ)言,剛接觸Java的人可能會(huì)感覺(jué)比較抽象,不過(guò)沒(méi)關(guān)系不用著急,上課的時(shí)候認(rèn)真聽(tīng)老師講解,一些概念知識(shí)慢慢去理解,課后多做練習(xí),熟能生巧,哪怕是你的記性再好,課后不去強(qiáng)化練習(xí)也沒(méi)用,只有多練了,當(dāng)你在做項(xiàng)目時(shí)你才能很熟練的寫出你想要代碼。
我覺(jué)得把Java學(xué)會(huì)的關(guān)鍵一點(diǎn)就是堅(jiān)持練習(xí)。學(xué)習(xí)Java時(shí)每天必須保證一定量的練習(xí),我們老師也說(shuō)學(xué)習(xí)編程語(yǔ)言沒(méi)有捷徑可走。真的,只有每天反復(fù)操作了,經(jīng)常寫代碼了,我們?cè)谟龅絾?wèn)題時(shí)才有一定的思路。欲速則不達(dá),學(xué)習(xí)編程語(yǔ)言需要一個(gè)比較漫長(zhǎng)的階段,不能一步登天,這需要一個(gè)過(guò)程,在這個(gè)過(guò)程中慢慢積累經(jīng)驗(yàn),扎實(shí)基礎(chǔ)。不要滿足于現(xiàn)狀,要不斷完善自己的知識(shí)體系,善于總結(jié)實(shí)踐經(jīng)驗(yàn)。要端正自己的學(xué)習(xí)態(tài)度,是主動(dòng)去
學(xué),而不是被動(dòng)!提高自學(xué)能力。學(xué)習(xí)編程的秘訣是:編程、編程、再編程。不僅要多實(shí)踐,而且要快實(shí)踐。
我們?cè)诳磿?shū)的時(shí)候,不要等到你完全理解了才動(dòng)手敲代碼,而是應(yīng)該在看書(shū)的同時(shí)敲代碼,程序運(yùn)行的各種情況可以讓你更快更牢固的掌握知識(shí)點(diǎn)。程序代碼是軟件開(kāi)發(fā)最重要的成果之一,其中滲透了程序員的思想與靈魂。當(dāng)你學(xué)習(xí)一個(gè)類以后,你就可以自己寫個(gè)簡(jiǎn)單的例子程序來(lái)運(yùn)行一下,看看有什么結(jié)果,然后再多調(diào)用幾個(gè)類的方法,看看運(yùn)行結(jié)果,這樣非常直觀的把類給學(xué)會(huì)了,而且記憶非常深刻。然后不應(yīng)該滿足把代碼調(diào)通,你應(yīng)該想想看如果我不這樣寫,換個(gè)方式,再試試行不行。記得哪個(gè)高人說(shuō)過(guò)學(xué)習(xí)編程就是個(gè)破壞的過(guò)程,把書(shū)上的例子,自己學(xué)習(xí)Documentation編寫的例子在運(yùn)行通過(guò)以后,不斷的嘗試著用不同的方法實(shí)現(xiàn),不斷的嘗試破壞代碼的結(jié)構(gòu),看看它會(huì)有什么結(jié)果。通過(guò)這樣的方式,你會(huì)很徹底的很精通的掌握J(rèn)ava。舉個(gè)例子,我們都編過(guò)HelloWorld,一開(kāi)始很多同學(xué)不是很理解為什么main方法一定要這樣來(lái)定義publicstaticvoidmain(String[]args),能不能不這樣寫?我剛也有這樣的疑問(wèn)。想知道答案嗎?很簡(jiǎn)單,你把main改個(gè)名字運(yùn)行一下,看看報(bào)什么錯(cuò)誤,然后根據(jù)出錯(cuò)信息進(jìn)行分析;把main的public取掉,在試試看,報(bào)什么錯(cuò)誤;static去掉還能不能運(yùn)行;不知道m(xù)ain方法是否一定要傳一個(gè)String[]數(shù)組的,把String[]改掉,改成int[],或者String試試看;不知道是否必須寫args參數(shù)名稱的,也可以把a(bǔ)rgs改成別的名字,看看運(yùn)行結(jié)果如何。
學(xué)習(xí)Java這段時(shí)間,有時(shí)候會(huì)覺(jué)得有點(diǎn)苦,但是我覺(jué)得正是有了你奮斗時(shí)的苦,才能換來(lái)學(xué)成后的甜。當(dāng)你經(jīng)過(guò)認(rèn)真寫代碼做完一個(gè)項(xiàng)目時(shí),你會(huì)有一種成就感。心里有一種說(shuō)不出的喜悅之情。
學(xué)習(xí)Java靠得是韌勁,靠得是拼勁,考得是堅(jiān)持不懈。如果做好了這幾點(diǎn),我想Java對(duì)你來(lái)說(shuō)不會(huì)太難。還有,你自己要有信心,相信自己能學(xué)會(huì)。
友情提示:本文中關(guān)于《java web 編程課程總結(jié)》給出的范例僅供您參考拓展思維使用,java web 編程課程總結(jié):該篇文章建議您自主創(chuàng)作。
來(lái)源:網(wǎng)絡(luò)整理 免責(zé)聲明:本文僅限學(xué)習(xí)分享,如產(chǎn)生版權(quán)問(wèn)題,請(qǐng)聯(lián)系我們及時(shí)刪除。