計(jì)算機(jī)專業(yè)JAVa 方面實(shí)習(xí)報告_第1頁
計(jì)算機(jī)專業(yè)JAVa 方面實(shí)習(xí)報告_第2頁
計(jì)算機(jī)專業(yè)JAVa 方面實(shí)習(xí)報告_第3頁
計(jì)算機(jī)專業(yè)JAVa 方面實(shí)習(xí)報告_第4頁
計(jì)算機(jī)專業(yè)JAVa 方面實(shí)習(xí)報告_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

學(xué)院《Java程序設(shè)計(jì)》教學(xué)實(shí)習(xí)報告部門:專業(yè):班級:姓名:指導(dǎo)教師:《Java程序設(shè)計(jì)》教學(xué)實(shí)習(xí)報告一、實(shí)習(xí)時間:年月日至年月日二、實(shí)習(xí)地點(diǎn):三、實(shí)習(xí)目的1、掌握搭建Java開發(fā)環(huán)境的方法;2、通過團(tuán)隊(duì)合作,提高溝通、交流能力,培養(yǎng)團(tuán)隊(duì)合作精神;3、嚴(yán)格按照J(rèn)ava語言編寫規(guī)約編寫代碼,養(yǎng)成遵守規(guī)約的習(xí)慣,增強(qiáng)編碼質(zhì)量的意識;教師面向?qū)ο蟪绦驅(qū)嵗钠饰?,以及?shí)際操作,理解面向?qū)ο缶幊痰睦砟睿⑹炀毦帉懗绦颍?、掌握J(rèn)ava程序的調(diào)試方法;四、實(shí)習(xí)內(nèi)容及方法實(shí)訓(xùn)1相關(guān)環(huán)境搭建1、實(shí)訓(xùn)目的:1)、熟悉Java語言的程序開發(fā)環(huán)境2)、理解Java兩類程序的運(yùn)行機(jī)制。2、實(shí)訓(xùn)內(nèi)容:JDK開發(fā)環(huán)境第一步:下載。從學(xué)校網(wǎng)站上找:6,在里面找編程軟件。第二步:安裝jdk。安裝在D盤的根目錄下面。第三步:安裝好后,選擇“開始”→“運(yùn)行…”命令,在打開的“運(yùn)行”窗口中輸入“cmd”命令并“確定”。在打開的命令行窗口中,分別執(zhí)行java和javac命令。第四步:查看操作系統(tǒng)環(huán)境變量。第五步:設(shè)置環(huán)境變量及path環(huán)境變量的作用和設(shè)置。編輯源文件文本編輯importjava.io.*;

publicclassHelloWorld1{

publicstaticvoidmain(Stringarg[]){

System.out.println("HelloWorld!");

}

}運(yùn)行結(jié)果如下圖所示:實(shí)訓(xùn)2Java基礎(chǔ)-控制語句使用實(shí)例一、實(shí)訓(xùn)目的:1、熟練掌握J(rèn)ava語言中的三種基本的流程控制2、能夠讀懂一般流程控制的實(shí)例3、理解數(shù)組的概念4、掌握數(shù)組的定義方法5、掌握數(shù)組的應(yīng)用二、實(shí)訓(xùn)內(nèi)容:1、隨機(jī)輸入3個數(shù),要求按降序排列。importjava.io.*;publicclassjiangxu{publicstaticvoidmain(Stringargs[]){ intx,y,z; x=(int)(Math.random()*100); y=(int)(Math.random()*100); z=(int)(Math.random()*100); if(x>y){ if(y>z){System.out.println(x);System.out.println(y);System.out.println(z);} else{if(x>z){System.out.println(x);System.out.println(z);System.out.println(y);} else{System.out.println(z);System.out.println(x);System.out.println(y);} } }if(x<y){ if(z<x){System.out.println(y);System.out.println(x);System.out.println(z);} else{ if(z<y){System.out.println(y);System.out.println(z);System.out.println(x);} else{System.out.println(z);System.out.println(y);System.out.println(x); }}}}}運(yùn)行結(jié)果如下圖所示:2、編寫程序,用循環(huán)語句列出1到10的階乘值。publicclassjiecheng{ publicstaticvoidmain(Stringargs[]){ inti; intsum=1; for(i=1;i<=10;i++){ sum*=i; System.out.println(""+sum); } }}結(jié)果如下圖所示:3、編寫程序顯示一年的月份。月份要保存在數(shù)組中。publicclassyuefen{ publicstaticvoidmain(Stringarg[]){ int[]b=newint[12]; for(inta=1;a<=12;a++){ System.out.println("一年中第"+a+"個月是"+a+"月份"); } }}結(jié)果如下圖所示:4、定義一個二維數(shù)組,從鍵盤輸入數(shù)據(jù),要求求出最大值元素、最小值元素。publicclassMaxMin{publicstaticvoidmain(Stringargs[]){ int[][]x={{1,9,6},{12,10,21},{22},{13,8,15}}; intmax=0; intmin=0;for(inti=0;i<x.length;i++){for(intj=0;j<x[i].length;j++){max=x[0][0];if(max<x[i][j]){max=x[i][j];}else{min=x[i][j];}}}System.out.println("最大值="+max);System.out.println("最小值="+min);}}運(yùn)行結(jié)果如下圖所表示:(三)實(shí)訓(xùn)分析總結(jié)1、三種循環(huán)語句的數(shù)據(jù)流程圖如何執(zhí)行?2、三種循環(huán)語句的語法格式。while循環(huán)語句是當(dāng)型結(jié)構(gòu),它的語法格式是:[initalization]While(loop-condition){Body;[iteration;]}for循環(huán)語句是當(dāng)型結(jié)構(gòu),在幾種循環(huán)語句的使用中最為靈活,語法格式是:for([initialization];[loop-condition];[iteration]){body;}break語句的作用是終止包含break語句的程序塊,語法格式為:break[label]3、什么是數(shù)組元素,數(shù)組下標(biāo)?數(shù)組是由相同的數(shù)據(jù)類型的數(shù)據(jù)類型按順序組成的數(shù)據(jù)集合。數(shù)據(jù)中的每個數(shù)據(jù)元素可以用一個統(tǒng)一的數(shù)組名和下標(biāo)來唯一地確定。數(shù)組分為一維數(shù)組和多維數(shù)組;4、數(shù)組的定義形式(聲明,空間的分配)。Java中數(shù)組的聲明格式為:TypearrayName[];或type[]arrayName;其中type(數(shù)據(jù)類型)可以為java中任意的數(shù)據(jù)類型,包括基本數(shù)據(jù)類型和對象類型,arrayName(數(shù)組明)為一個合法的標(biāo)識符,[]指明該變量是一個數(shù)組類型變量。數(shù)組的空間分配:Java在數(shù)組的聲明時并對不為數(shù)組元素分配內(nèi)存,因此在[]中不用指出數(shù)組中元素的個數(shù),既數(shù)組長度。格式:arrayName=newtype[arraySize];其中arraySize指明數(shù)組長度。實(shí)訓(xùn)3類的封裝、繼承與多態(tài)性實(shí)訓(xùn)目的:1、理解類、封裝、繼承多態(tài)的概念。2、掌握類的對象的創(chuàng)建和使用。3、理解方法的概念。4、掌握方法的調(diào)用,參數(shù)的傳遞。5、熟練掌握類的繼承。實(shí)訓(xùn)內(nèi)容:1、編寫程序,給定圓的半徑和高度,計(jì)算圓柱體的體積,利用引用對象方法的形式表示。classcircle{ doubleTJ(doubler,doubleh){ return3.14*r*r*h; }}publicclassyztj{ publicstaticvoidmain(Stringargs[]){ doubler,h; circlec=newcircle(); System.out.println("圓柱體積為:"+c.TJ(12,5)); }}運(yùn)行結(jié)果如下圖所示:2、試設(shè)計(jì)一個Calculator類,并完成下列的各方法的程序設(shè)計(jì):定義add(a,b)方法,用來計(jì)算兩數(shù)之和。定義mul(a,b)方法,用來計(jì)算兩數(shù)的乘積。定義sub(a,b)方法,用來計(jì)算兩數(shù)之差。定義div(a,b)方法,用來計(jì)算a/b。classCalculator{ inta; intb; Calculator(inta,intb){ this.a=a; this.b=b; } intadd(){ returna+b;} intmul(){ returna*b; } intsub(){ returna/b; } publicstaticvoidmain(Stringargs[]){ Calculatorc1=newCalculator(12,13); System.out.println("add="+c1.add()); System.out.println("mul="+c1.mul()); System.out.println("sub="+c1.sub()); }}運(yùn)行結(jié)果如下圖所示:3、請逐步完成下列的程序設(shè)計(jì):(a)、設(shè)計(jì)一個父類Caaa,內(nèi)含public兩個整數(shù)數(shù)據(jù)成員。(b)、設(shè)計(jì)一個子類Cbbb,繼承自Caaa類,并加入set_num()方法,可用來賦值從父類繼承而來的成員num1,num2,和show()方法,用來顯示num1與num2的值。(c)、在Caaa類里加入一個沒有參數(shù)的構(gòu)造函數(shù)Caaa(),它可用來把num1和num2賦值初值為1。(d)、在類里加入另一個有參數(shù)的構(gòu)造函數(shù)Caaa(inta,intb),它可用來把num1賦值為a,把num2賦值為b。(e)、在main()方法里編寫程序代碼,測試(c)和(d)的結(jié)果。classCaaa{ publicintnum1; publicintnum2; publicCaaa(inta,intb){ this.num1=a; this.num2=b; } publicCaaa(){ this.num1=1; this.num2=1; } publicvoidshow(){ System.out.println("num1="+this.num1); System.out.println("num2="+this.num2); }}classCbbbextendsCaaa{ publicvoidset_num(){ System.out.println("num1="+this.num1); System.out.println("num2="+this.num2); }}classCccc{ publicstaticvoidmain(Stringargs[]){ CaaamyCaaa=newCaaa(); CbbbmyCbbb=newCbbb(); myCbbb.show(); CaaamCaaa=newCaaa(2,2); CbbbmCbbb=newCbbb(); mCaaa.show(); }}運(yùn)行結(jié)果如下圖所示:4、設(shè)計(jì)一個類,內(nèi)含一個方法可以判別輸入的值為奇數(shù)還是偶數(shù),如果為奇數(shù)就輸出“此數(shù)為奇數(shù)”,反之若為偶數(shù)就輸出“此數(shù)為偶數(shù)”。classPD{ publicintx; voidM(intx){ if(x%2==0) System.out.println(x+"為偶數(shù)"); else System.out.println(x+"為奇數(shù)"); }}publicclassPDJO{ publicstaticvoidmain(Stringargs[]){ PDx1=newPD(); x1.M(32); }}運(yùn)行結(jié)果如下圖所示:實(shí)訓(xùn)分析總結(jié):1、什么是類?請寫出定義類的格式。答:類是組成Java程序的基本要素,也是Java中重要的引用數(shù)據(jù)類型。類封裝了一類對象的狀態(tài)屬性和行為方法。[修飾符]class類名{……//成員變量聲明……//成員方法聲明}2、如何創(chuàng)建一個類和該類的對象?答:類名引用變量;引用變量名=new類名([參數(shù)表]);3、如何使用類的成員變量和方法?答:引用變量名.成員變量名引用變量名.成員方法名([參數(shù)表])4、什么是方法?答:方法是來實(shí)現(xiàn)對象行為的。5、什么是繼承?答:在Java中繼承可以實(shí)現(xiàn)代碼的復(fù)用。6、什么是封裝?答:把一系列具有相同特征的屬性放在一個對象,組成的這個對象的過程就叫做封裝。實(shí)訓(xùn)四簡單計(jì)算器模擬實(shí)訓(xùn)目的:1、熟練掌握圖形用戶界面的設(shè)計(jì)和各組件的應(yīng)用2、能夠處理一般事件的響應(yīng)實(shí)訓(xùn)內(nèi)容:1、設(shè)計(jì)一個窗口,內(nèi)含一個按鈕,當(dāng)按下此按鈕的時候,窗口的顏色會從原來的白色變成其他你所設(shè)置的顏色。importjava.awt.*;importjavax.swing.*;importjava.awt.event.MouseAdapter;importjava.awt.event.MouseEvent;publicclassTestColorextendsMouseAdapter{Panelp1;//定義Buttonb1;Framef;CardLayoutClayout=newCardLayout();publicvoidcreate(){//創(chuàng)建create方法b1=newButton("藍(lán)色");//變色按鈕p1=newPanel();//面板f=newFrame("testCardLayout");p1.add(b1);//添加按鈕到面板中p1.setBackground(Color.WHITE);//設(shè)置背景為白色p1.setVisible(true);b1.addMouseListener(this);//添加鼠標(biāo)事件監(jiān)聽器f.setLayout(newFlowLayout());//設(shè)置面板的布局方式f.add(p1);//將面板添加到框架中f.setSize(200,200);f.setVisible(true);}publicstaticvoidmain(Stringargs[]){TestColortc=newTestColor();//建立窗口tc.create();//調(diào)用creat方法}publicvoidmousePressed(MouseEvente){//創(chuàng)建mousePressed方法if(e.getSource()==b1){//當(dāng)方法獲取鼠標(biāo)事件的資源為b1時,框架背景色變?yōu)樗{(lán)色 f.setBackground(Color.BLUE);}}}運(yùn)行結(jié)果如下圖所示:點(diǎn)擊后變?yōu)樗{(lán)色2、設(shè)計(jì)一個包含有文本框和標(biāo)簽的窗口,在文本框中輸入一段文字,按回車后,將該段文字內(nèi)容加入到標(biāo)簽中顯示。importjava.awt.*;importjavax.swing.*;importjava.awt.event.KeyAdapter;importjava.awt.event.KeyEvent;publicclassTest4_2{ publicstaticvoidmain(String[]args){ JFramejf=newJFrame(); JPaneljp=newJPanel(); finalJLabeljl=newJLabel(); finalJTextFieldjtf=newJTextField(); jf.add(jp); jp.setLayout(newGridLayout(2,1)); jp.add(jl); jp.add(jtf); jtf.addKeyListener(newKeyAdapter(){ publicvoidkeyPressed(KeyEvente){ if(e.getKeyCode()==KeyEvent.VK_ENTER){ jl.setText(jtf.getText()); } } }); jf.setSize(300,300); jf.setVisible(true); }}運(yùn)行結(jié)果如下圖所示:3、每一個Windows版本都提供了“計(jì)算器”應(yīng)用程序,可以在附件里打開它,利用AWT組件創(chuàng)建計(jì)算器。publicclassJisuanextendsJFrameimplementsActionListener{privateJTextFieldreasult;privateJButtonbt1,bt2,bt3,bt4,bt5,bt6,bt7,bt8,bt9,bt0,btAC,btAdd,btSub,/*btcheng,btchu,*/btReasult,btD,btCancel;privatebooleanadd,sub,end,s,c;privateStringstr;privatedoublenum1,num2;publicJisuan(){JPanelp1=newJPanel();JPanelp2=newJPanel();JPanelp3=newJPanel();btCancel=newJButton("Cancel");btCancel.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEventee){System.exit(0);}});p3.add(btCancel);//JPanelp4=newJPanel();//JPanelp5=newJPanel();//reasult.setBorder(tb);reasult=newJTextField("0",20);reasult.setEditable(false);reasult.setHorizontalAlignment(JTextField.RIGHT);reasult.setForeground(Color.BLUE);p1.add(reasult);bt0=newJButton("0");bt0.addActionListener(this);bt1=newJButton("1");bt1.addActionListener(this);bt2=newJButton("2");bt2.addActionListener(this);bt3=newJButton("3");bt3.addActionListener(this);bt4=newJButton("4");bt4.addActionListener(this);bt5=newJButton("5");bt5.addActionListener(this);bt6=newJButton("6");bt6.addActionListener(this);bt7=newJButton("7");bt7.addActionListener(this);bt8=newJButton("8");bt8.addActionListener(this);bt9=newJButton("9");bt9.addActionListener(this);btD=newJButton(".");btD.addActionListener(this);btAC=newJButton("AC");btAC.addActionListener(this);btAdd=newJButton("+");btAdd.addActionListener(this);btSub=newJButton("-");btSub.addActionListener(this);/*btcheng=newJButton("*");btcheng.addActionListener(this);btchu=newJButton("/");btchu.addActionListener(this);*/btReasult=newJButton("=");btReasult.addActionListener(this);p2.add(bt1);p2.add(bt2);p2.add(bt3);p2.add(bt4);p2.add(bt5);p2.add(bt6);p2.add(bt7);p2.add(bt8);p2.add(bt9);p2.add(bt0);p2.add(btD);p2.add(btAC);p2.add(btAdd);p2.add(btSub);/*p2.add(btcheng);p2.add(btchu);*/p2.add(btReasult);p2.setLayout(newGridLayout(5,3));add(p1,BorderLayout.NORTH);add(p2,BorderLayout.CENTER);add(p3,BorderLayout.SOUTH);}第二段:publicvoidactionPerformed(ActionEvente){if(e.getSource()==bt1)num(1);elseif(e.getSource()==bt2)num(2);elseif(e.getSource()==bt3)num(3);elseif(e.getSource()==bt4)num(4);elseif(e.getSource()==bt5)num(5);elseif(e.getSource()==bt6)num(6);elseif(e.getSource()==bt7)num(7);elseif(e.getSource()==bt8)num(8);elseif(e.getSource()==bt9)num(9);elseif(e.getSource()==bt0)num(0);elseif(e.getSource()==btAdd){sign(1);btD.setEnabled(true);}elseif(e.getSource()==btSub){sign(2);btD.setEnabled(true);}/*elseif(e.getSource()==btcheng){sign(3);btD.setEnabled(true);}elseif(e.getSource()==btchu){sign(4);btD.setEnabled(true);}*/elseif(e.getSource()==btAC){btD.setEnabled(true);reasult.setText("0");}elseif(e.getSource()==btD){str=reasult.getText();str+=".";reasult.setText(str);btD.setEnabled(false);}elseif(e.getSource()==btReasult){btD.setEnabled(true);num2=Double.parseDouble(reasult.getText());if(add){num1=num1+num2;}elseif(sub){num1=num1-num2;}//elseif(cheng){num1=num1*num2;}// else(chu){num1=num1/num2;};reasult.setText(String.valueOf(num1));end=true;}}運(yùn)行結(jié)果如下圖所示:實(shí)訓(xùn)分析總結(jié):1、什么是布局管理器,它有什么用?答:在實(shí)際編程中,我們每設(shè)計(jì)一個窗體,都要往其中添加若干組件。為了管理好這些組件的布局,我們就需要使用布局管理器2、說明文本區(qū)和文本框的主要不同點(diǎn)。答:文本區(qū)可以輸入多行文字,文本框只能輸入單行文字。實(shí)訓(xùn)四簡單網(wǎng)頁設(shè)計(jì)、學(xué)生信息管理系統(tǒng)實(shí)訓(xùn)目的:1、了解一些簡單的網(wǎng)頁設(shè)計(jì)的代碼2、分小組完成學(xué)生信息管理系統(tǒng),加強(qiáng)團(tuán)隊(duì)合作的意識,充分發(fā)揮學(xué)生團(tuán)隊(duì)作戰(zhàn)的能力。實(shí)訓(xùn)內(nèi)容:1、簡單網(wǎng)頁設(shè)計(jì)<html><head><title>框架集</title></head><framesetrows="*"cols="238,533"><framesrc="Untitled-7.html"/><framesetcols="266,267"><framesrc="UntitledFrame-2.html"/><framesrc="UntitledFrame-3.html"/></frameset></frameset><noframes><body></body></noframes></html>結(jié)果如圖所示:2、學(xué)生管理系統(tǒng)的設(shè)計(jì)publicvoidactionPerformed(ActionEvente){if(e.getSource()==btn1){//當(dāng)選擇查詢時的事件處理過程labf.setText("請選擇按學(xué)號或按姓名查詢");dlg.setLocation(200,100);dlg.setVisible(true);}if(e.getSource()==btn2){//當(dāng)選擇修改時的事件處理過程labf.setText("請輸入要修改的學(xué)號或姓名");dlg.setLocation(80,30);txt1.setEditable(true);strno=txt1.getText();txt2.setText("");dlg.add(labf2);labf2.setText("修改完成按保存按鈕");txt2.setEditable(false);dlg.setVisible(true);try{pstmt.setString(1,strno);rs=pstmt.executeQuery();}catch(Exceptionee){ee.printStackTrace();}}if(e.getSource()==ok){//當(dāng)選擇保存時的事件處理過程modi();initTable();}if(e.getSource()==btn3){//選擇退出時的事件處理過程dlg.dispose();try{rs.close();pstmt.close();Connect12.close();}catch(Exceptionee){ee.printStackTrace();}System.exit(0);}if(e.getSource()==but1){strno=txt1.getText();strname=txt2.getText();System.out.println("str1"+strno);System.out.println("str2"+strname);dlg.dispose();search();}if(e.getSource()==but2){dlg.dispose();initTable();}}voidinitTable(){//本方法完成數(shù)據(jù)模型的數(shù)據(jù)添加//dtm.setRowCount(0);//本語句可用來清空模型中的數(shù)據(jù)try{rs.beforeFirst();while(rs.next()){Vectorv1=newVector();//建立行向量for(inti=1;i<=title.size();i++) v1.addElement(rs.getString(i));//將當(dāng)前記錄的各列添加到行向量 dtm.addRow(v1);//將行向量添加到數(shù)據(jù)模型}}catch(SQLExceptione){e.printStackTrace();}dtm.fireTableStructureChanged();//通知所的listener表格的結(jié)構(gòu)已改變}voidinitDialog(){//創(chuàng)建一個初始化的對話框,做為各功能按鈕的彈出式窗口bgp.add(radiostrno);bgp.add(radiostrname);radiostrno.addItemListener(this);radiostrname.addItemListener(this);dlg.setLayout(newFlowLayout(FlowLayout.CENTER,10,10));dlg.add(labf);dlg.add(radiostrno);dlg.add(txt1);dlg.add(radiostrname);dl

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論