《Java語(yǔ)言》實(shí)驗(yàn)報(bào)告
《《Java語(yǔ)言》實(shí)驗(yàn)報(bào)告》由會(huì)員分享,可在線閱讀,更多相關(guān)《《Java語(yǔ)言》實(shí)驗(yàn)報(bào)告(19頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、 實(shí)驗(yàn)報(bào)告 2013-2014學(xué)年第1學(xué)期 科目名稱: Java語(yǔ)言 指導(dǎo)老師: 楊名念 班 級(jí): 信管1102班 學(xué) 號(hào): 姓 名: 姚岸 湖南工業(yè)大學(xué) 財(cái)經(jīng)學(xué)院 實(shí)驗(yàn)一 【實(shí)驗(yàn)名稱】:JDK的安裝、配置,Java基本語(yǔ)法練習(xí) 【實(shí)驗(yàn)日期】:2013年9月11日 【實(shí)驗(yàn)?zāi)康摹浚? 1. 熟悉JDK開(kāi)發(fā)環(huán)境。 2. 熟悉UltraEdit編輯器的使用。 3. 掌握J(rèn)ava Application的程序結(jié)構(gòu)和開(kāi)發(fā)過(guò)程。 4. 掌
2、握各種數(shù)據(jù)類型及其使用方法。 【實(shí)驗(yàn)內(nèi)容及要求】: 1. JDK安裝。 2. 設(shè)置環(huán)境變量。 3. 運(yùn)用記事本或UltraEdit編寫(xiě)并運(yùn)行一個(gè)簡(jiǎn)單的“Hello World!”應(yīng)用程序。 4. 對(duì)于給定的一個(gè)整數(shù),判斷其是否為水仙花數(shù)。 【實(shí)驗(yàn)步驟】: 1. 登錄到Sun公司的網(wǎng)站免費(fèi)下載JDK1.6(如jdk-6u3-windows-i586-p.exe),在該網(wǎng)站的“Popular Downloads”頁(yè)面中單擊“Java SE”,然后選擇“JDK 6 Update”,單擊“下載”即可; 雙擊jdk-6u3-windows-i586-p.exe文件圖標(biāo),將出現(xiàn)安裝
3、向?qū)Ы缑?,接受軟件安裝協(xié)議,出現(xiàn)選擇安裝路徑界面。為了便于今后設(shè)置環(huán)境變量,建議修改默認(rèn)的安裝路徑。這里將默認(rèn)的安裝路徑“”修改為“E:\jdk1.6”; 將JDK安裝到E:\jdk1.6目錄下,生出相應(yīng)的目錄結(jié)構(gòu)即可。 2.環(huán)境變量的設(shè)置:在桌面找到計(jì)算機(jī)點(diǎn)擊右鍵——>屬性——>高級(jí)系統(tǒng)設(shè)置——>高級(jí)里的環(huán)境變量——>用戶變量新建——>設(shè)置path和classpath兩個(gè)變量即可。 【程序代碼】: 3.public class Test { public static void main (String args[]) { System.out.println("Hello
4、World"); } } 4. import java.util.*; public class shuixian{ public static void main(String args[]){ Scanner reader=new Scanner(System.in); int i,a,b,c; System.out.print("輸入數(shù)i:"); i=reader.nextInt(); a=i/100; b=(i/10)%10; c=i%10; if(i==a*a*a+b*b*b+c*c*c) System.out.printf("%d是水仙花",i); e
5、lse System.out.printf("%d不是水仙花",i); } } 【程序輸出結(jié)果】: 3、輸出:Hello Word 4、輸入數(shù)i:123 123不是水仙花 【結(jié)果分析、自己的體會(huì)和收獲】: 這是學(xué)習(xí)Java的首堂實(shí)驗(yàn)課,我們首先了解了JDK的開(kāi)發(fā)環(huán)境,并且能在自己電腦上進(jìn)行Java所需的相關(guān)環(huán)境配置。接下來(lái)就是實(shí)戰(zhàn)性的操作了,這次實(shí)驗(yàn)我們主要以驗(yàn)證型為主,主要是為了讓我們對(duì)Java的相關(guān)操作更加熟練。 本次實(shí)驗(yàn)雖然不需要我們自己進(jìn)行程序的編寫(xiě),也許看起來(lái)只是簡(jiǎn)單的敲寫(xiě)代碼,但它實(shí)際要求我們要細(xì)心,耐心,因?yàn)橐稽c(diǎn)點(diǎn)的錯(cuò)誤,就會(huì)使得整個(gè)程序不能運(yùn)行。
6、 實(shí)驗(yàn)二 【實(shí)驗(yàn)名稱】:基本控制結(jié)構(gòu)、數(shù)組與循環(huán)的具體應(yīng)用 【實(shí)驗(yàn)日期】:2013年9月25日 【實(shí)驗(yàn)?zāi)康摹浚? 1. 掌握分支語(yǔ)句if、switch。 2. 掌握循環(huán)語(yǔ)句for、while、do-while的應(yīng)用。 3. 掌握數(shù)組的聲明和使用。 4. 掌握雙重循環(huán)的使用。 【實(shí)驗(yàn)內(nèi)容及要求】: 1. 分別使用if-else-if語(yǔ)句和switch語(yǔ)句編程,確定某一成績(jī)所對(duì)應(yīng)的等級(jí)。 2. 分別使用while、do-while和for語(yǔ)句編程,求1~100的和。 3. 初始化一維整型數(shù)組,并查找數(shù)組中最大的數(shù)。 4. 使用雙重循環(huán)編程,求100以內(nèi)所有素?cái)?shù)的和。
7、【程序代碼】: 1.(1) if-else-if語(yǔ)句: import java.util.*; public class hello{ public static void main(String args[]){ Scanner reader=new Scanner(System.in); int a=0; System.out.print("輸入成績(jī)a:"); a=reader.nextInt(); if(a>=90&&a<=100) System.out.printf("%d為優(yōu)秀",a); else if(a>=80&&a<90) System.out.prin
8、tf("%d為良好",a); else if(a>=70&&a<80) System.out.printf("%d為中等",a); else if(a>=60&&a<70) System.out.printf("%d為合格",a); else if(a<60) System.out.printf("%d為不合格",a); } } (2) switch語(yǔ)句: import java.util.*; public class hello{ public static void main(String args[]){ Scanner reader=new Scanner
9、(System.in); int a=0,t=0; System.out.print("輸入成績(jī)a:"); a=reader.nextInt(); t=a/10; switch(t){ case 10: case 9:System.out.printf("%d為優(yōu)秀",t); case 8:System.out.printf("%d為良好",t); case 7:System.out.printf("%d為中等",t); case 6:System.out.printf("%d為合格",t); case 5: case 4: case 3: case 2: cas
10、e 1: case 0:System.out.printf("%d為不合格",t); dafault:System.out.printf("%d不代表成績(jī)",t); } } } 2.(1) while語(yǔ)句: public class hello{ public static void main(String args[]){ int i=1,sum=0; while(i<=100){ sum=sum+i; i++; } System.out.println("e="+sum); } } (2) do-while語(yǔ)句: public class hello
11、{ public static void main(String args[]){ int i=1,sum=0; do{ sum=sum+i; i++; }while(i<=100); System.out.println("e="+sum); } } (3) for語(yǔ)句: public class hello{ public static void main(String args[]){ int i,sum=0; for(i=1;i<=100;i++){ sum=sum+i; } System.out.println("e="+sum); } } 3
12、. import java.util.Scanner; public class hello{ public static void main(String args[]){ int i,max; int a[]={1,2,3,4,5,6,7,8,9}; max=a[0]; for(i=0;i<=8;i++){ if(a[i]>a[0]){ max=a[i]; } else max=a[0]; } System.out.printf("%d",max); } } 4. import java.util.*; public class hello{ publ
13、ic static void main(String args[]){ int i,j,s=0; for(i=1;i<=100;i++){ int k=0; for(j=2;j<=i/2;j++) if(i%j==0) k++; if(i==1) continue; else { if(k==0) s+=i; else continue; } } System.out.println("1到100之間所有素?cái)?shù)的和為"+s); } } 【程序輸出結(jié)果】: 1、輸入成績(jī)a:87 87為良好 2、輸出結(jié)果為:e=5050 3、輸出結(jié)
14、果為:9 4、 輸出結(jié)果為:1到100之間所有素?cái)?shù)的和為1060. 【結(jié)果分析、自己的體會(huì)和收獲】: 本次實(shí)驗(yàn)就是要求我們通過(guò)自己編寫(xiě)程序,將基本控制結(jié)構(gòu)、數(shù)組與循環(huán)運(yùn)用起來(lái),來(lái)完成實(shí)驗(yàn)中的要求,以此來(lái)檢驗(yàn)我們課堂所學(xué)的知識(shí),雖然這次實(shí)驗(yàn)中有很多語(yǔ)句的編寫(xiě)跟我們以前所學(xué)的C語(yǔ)言程序有很多的相同之處,但通過(guò)學(xué)習(xí)我們會(huì)發(fā)現(xiàn)有很多細(xì)微之處不同,而且Java編程更簡(jiǎn)單,所以Java的學(xué)習(xí)應(yīng)該是我們繼C語(yǔ)言后的另一個(gè)平臺(tái)。 實(shí)驗(yàn)三 【實(shí)驗(yàn)名稱】:類和對(duì)象的應(yīng)用 【實(shí)驗(yàn)日期】:2013年10月9日 【實(shí)驗(yàn)?zāi)康摹浚? 1. 掌握類的聲明和對(duì)象的創(chuàng)建。 2. 掌握方法的定義、調(diào)用和構(gòu)造
15、方法的使用。 【實(shí)驗(yàn)內(nèi)容及要求】: 1. 編程創(chuàng)建一個(gè)名為Circle的表示圓形的類,在其中定義一個(gè)變量表示圓的半徑并定義一個(gè)方法對(duì)其進(jìn)行初始化,再定義兩個(gè)方法求圓的周長(zhǎng)和面積,創(chuàng)建一個(gè)對(duì)象,求給定半徑的圓的周長(zhǎng)和面積。 2. 在上述的Circle類中,將圓半徑的初始化改在構(gòu)造方法中進(jìn)行,并進(jìn)行相應(yīng)的對(duì)象創(chuàng)建操作,求圓的周長(zhǎng)和面積。 3. 編寫(xiě)一個(gè)類,該類封裝了一元二次方程共有的屬性和功能,即該類有刻畫(huà)方程系數(shù)的3個(gè)成員變量以及計(jì)算實(shí)根的方法。 【程序代碼】: 1. . public class Hello { public static void main(St
16、ring args[]){ Circle circle; circle=new Circle(); circle.radius=163.16; double area=circle.getArea(); double girth=circle.getGirth(); System.out.printf("半徑是%5.3f的圓的面積: \n%5.3f\n",circle.radius,area); System.out.printf("半徑是%5.3f的圓的
17、周長(zhǎng): \n%5.3f\n",circle.radius,girth); } } class Circle{ double radius; double getArea(){ double area=3.14*radius*radius; return area; } double getGirth(){ double girth=3.14*2*radius; return girth; } } 2. import java
18、.util.*; public class Hello { public static void main(String args[]){ Scanner reader=new Scanner(System.in); double r=0; System.out.print("輸入半徑r:"); r=reader.nextDouble(); Circle circle; circle=new Circle(); circle.r
19、adius=r; double area=circle.getArea(); double girth=circle.getGirth(); System.out.printf("半徑是%5.3f的圓的面積: \n%5.3f\n",circle.radius,area); System.out.printf("半徑是%5.3f的圓的周長(zhǎng): \n%5.3f\n",circle.radius,girth); } } class Circle{ double radi
20、us; double getArea(){ double area=3.14*radius*radius; return area; } double getGirth(){ double girth=3.14*2*radius; return girth; } } 3.package Hello; public class Hello { private double a; private double b; private double c; private
21、 double[] d; public String[] i; public void setValue(double a, double b, double c) { this.a = a; this.b = b; this.c = c; this.d = new double[2]; this.i = new String[2]; } public boolean canGetValue() { double temp; temp = b * b - 4 * a * c; if (temp < 0) { this.i[
22、0] = (-b) / (a * 2) + "+" + Math.sqrt(-temp) / (2 * a) + "i"; this.i[1] = (-b) / (a * 2) + "-" + Math.sqrt(-temp) / (2 * a) + "i"; return false; } else { this.d[0] = (-b + Math.sqrt(temp)) / (2 * a); this.d[1] = (-b - Math.sqrt(temp)) / (2 * a); return true; } } public
23、double getA() { return a; } public double getB() { return b; } public double getC() { return c; } public double getD(int i) { return d[i]; } public static void main(String[] args) { Hello pratice1 = new Hello(); pratice1.setValue(1, 3, 4); if (pratice1.canGetValue
24、()) { System.out.println(pratice1.getA()); System.out.println(pratice1.getB()); System.out.println(pratice1.getC()); System.out.println(pratice1.getD(0)); System.out.println(pratice1.getD(1)); } else { System.out.println(pratice1.i[0]); System.out.println(pratice1.
25、i[1]); } } } 【程序輸出結(jié)果】: 1、半徑是163.160的圓的面積: 83590.523 半徑是163.160的圓的周長(zhǎng): 1024.645 2、 輸入半徑r:10 半徑是10.000的圓的面積: 314.000 半徑是10.000的圓的周長(zhǎng): 62.800 3、 -1.5+1.3228756555322954i 【結(jié)果分析、自己的體會(huì)和收獲】: 本次實(shí)驗(yàn)感覺(jué)上是與C語(yǔ)言完全不搭邊的一次新的挑戰(zhàn)點(diǎn),以前對(duì)于Java的學(xué)習(xí),我們有C語(yǔ)言做支稱,而現(xiàn)在對(duì)于類與對(duì)象的學(xué)習(xí),感覺(jué)是一個(gè)全新的知識(shí)點(diǎn),我們學(xué)起來(lái)比以前吃力,有些操
26、作都看不懂,所以這次實(shí)驗(yàn)我們是靠團(tuán)隊(duì)協(xié)助一起完成的,有問(wèn)題出現(xiàn)大家一起查找,不會(huì)的地方,我們一起討論,最后這次實(shí)驗(yàn)雖然難,但我們還是及時(shí)完成了。 實(shí)驗(yàn)四 【實(shí)驗(yàn)名稱】:繼承與多態(tài)的應(yīng)用 【實(shí)驗(yàn)日期】:2013年10月23日 【實(shí)驗(yàn)?zāi)康摹浚? 1. 掌握類的繼承方法。 2. 掌握成員變量的繼承和隱藏。 3. 掌握方法的繼承、重載和重寫(xiě)。 【實(shí)驗(yàn)內(nèi)容及要求】: 1. 在一個(gè)類中編寫(xiě)4個(gè)兩數(shù)相加的重載方法,參數(shù)分別為整整,整實(shí)、實(shí)整、實(shí)實(shí)。并在主類中編程測(cè)試這些方法的運(yùn)行結(jié)果。 2. 編寫(xiě)一個(gè)Java應(yīng)用程序,設(shè)計(jì)一個(gè)
27、汽車類Vehicle,包含的成員屬性有:車輪個(gè)數(shù)wheels和車重weight,并包含一個(gè)汽車啟動(dòng)的方法go()。小車類Car是Vehicle的子類,其中包含屬性荷載人數(shù)passenger_load??ㄜ嘥ruck是Vehicle的子類,其中包含荷載人數(shù)passenger_load和荷載重量payload。要求每個(gè)類都要重寫(xiě)父類的方法go(),并都有相關(guān)數(shù)據(jù)的輸出方法。運(yùn)行程序,理解成員變量的繼承與隱藏。 【程序代碼】: 1.class T1{ int getSum(int x,int y){ return x+y; } double getSum(double x,in
28、t y){ return x+y; } double getSum(int x,double y){ return x+y; } double getSum(double x,double y){ return x+y; } } public class Demo{ public static void main(String args[]){ T1 a=new T1(); System.out.println(a.getSum(1,2)); System.out.println(a.getSum(1.3,2)); Syst
29、em.out.println(a.getSum(1,2.3)); System.out.println(a.getSum(1.3,2.3)); } } 2. public class T1{ public static void main(String args[]){ Car a=new Car(); Truck b=new Truck(); Vehicle c=new Vehicle(); c.f(); a.go(); b.go(); } } class Vehicle{ int wheels=4; double weight=1000; publi
30、c void go(){ System.out.printf("手動(dòng)擋啟動(dòng)"); } public void f(){ System.out.printf("wheels=%d,weight=%f",wheels,weight); } class Car extends Vehicle{ int passenger_load=6; public void go(){ System.out.printf("自動(dòng)擋啟動(dòng)\n"); System.out.printf("passenger_load=%d",passenger_load); } } class Truck e
31、xtends Vehicle{ int passenger_load=5; double payload=1200; public void go(){ System.out.printf("手動(dòng)加自動(dòng)啟動(dòng)"); System.out.printf("passenger_load=%d,payload=%f",passenger_load,payload); } } } 【程序運(yùn)行效果】: 1、1.3 3.3 3.3 3.6 2、wheels=4,weight=1000.000000 自動(dòng)擋啟動(dòng) passenger_load=6 手動(dòng)加自動(dòng)啟動(dòng)passenger
32、_load=5,payload=1200.000000 【結(jié)果分析、自己的體會(huì)和收獲】: 本次實(shí)驗(yàn)的目的是學(xué)會(huì)類的繼承和成員變量的隱藏,還有方法的繼承、重載和重寫(xiě),本次實(shí)驗(yàn)并不難,但是我在編寫(xiě)第一道題時(shí)就出現(xiàn)了問(wèn)題,因?yàn)槲以谝粋€(gè)地方使用了Double型,所以后面結(jié)果出來(lái)的時(shí)候,跟我計(jì)算的有點(diǎn)誤差,我一直以為是自己編程的錯(cuò)誤,后面經(jīng)過(guò)老師的講解,我換了一個(gè)數(shù)值進(jìn)行重新計(jì)算,發(fā)現(xiàn)沒(méi)有問(wèn)題了,經(jīng)過(guò)本次實(shí)驗(yàn)我覺(jué)得我們對(duì)于Java的了解還只是皮毛,要想進(jìn)一步學(xué)習(xí),還必須去努力探索。 實(shí)驗(yàn)五 【實(shí)驗(yàn)名稱】:接口的應(yīng)用與GUI設(shè)計(jì)
33、【實(shí)驗(yàn)日期】:2013年11月6日 【實(shí)驗(yàn)?zāi)康摹浚? 1. 掌握接口的使用。 2. 了解GUI的概念 3. 掌握基本GUI組件的使用 4. 理解并掌握GUI事件驅(qū)動(dòng)的程序設(shè)計(jì) 【實(shí)驗(yàn)內(nèi)容及要求】: 1. 編寫(xiě)一個(gè)包含收費(fèi)方法的接口,并在客車類和網(wǎng)吧類中實(shí)現(xiàn)該接口,并在主類中進(jìn)行使用測(cè)試。 2. 建立一個(gè)對(duì)話框,包含一個(gè)文本框、一個(gè)按鈕和一個(gè)標(biāo)簽,要求在文本框內(nèi)輸入自己名字“XXX”,點(diǎn)擊按鈕以后能在標(biāo)簽上顯示“XXX,你好!”。 【程序代碼】: 1、public class Example_1 { public static void main(String args
34、[]) { Bus bus=new Bus(); Netbar ca=new Netbar(); System.out.println("汽車的收費(fèi)為"+bus.g(1000)+""); System.out.println("網(wǎng)吧的收費(fèi)為"+ca.g(5)+""); } } interface Computable{ public double g(double x); } class Bus implements Computable{ public double g(double x){ retur
35、n 10*x; } } class Netbar implements Computable{ public double g(double x){ return 2.5*x; } } 2、import java.awt.Button; import java.awt.Color; import java.awt.Font; import java.awt.TextField; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax
36、.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; public class Demo4 extends JFrame { private TextField field; private Button button; public Demo4(){ this.setLayout(null); //布局 this.setTitle("用戶界面"); //標(biāo)題 this.setSize(300,
37、180); //大小 this.setResizable(false); //窗體大小不可改變 JLabel lal1=new JLabel(" 請(qǐng)輸入你的姓名:"); //標(biāo)簽 lal1.setFont(new Font("SimSun", Font.PLAIN, 12)); lal1.setForeground(Color.blue); //標(biāo)簽顏色 lal1.setBounds(30, 20, 120, 40);//位置和大小
38、 field=new TextField(); //文本框 field.setBounds(30,70, 120, 20); button=new Button("確定"); //按鈕 button.setBounds(30, 100, 80, 20); //為button添加監(jiān)聽(tīng)事件 button.addActionListener(new ActionListener(){
39、 public void actionPerformed(ActionEvent e) { String name=field.getText(); JOptionPane.showMessageDialog(null,name+"你好!"); } }); this.add(lal1); this.add(field); this.add(button); } public stati
40、c void main(String[] args) { Demo4 demo4=new Demo4(); demo4.setVisible(true); } } 【程序輸出結(jié)果】: 1、汽車的收費(fèi)為10000.0 網(wǎng)吧的收費(fèi)為12.5 2、 【結(jié)果分析、自己的體會(huì)和收獲】: 本次實(shí)驗(yàn)是對(duì)于接口的使用和GUI事件驅(qū)動(dòng)的程序設(shè)計(jì),通過(guò)對(duì)于類和接口的學(xué)習(xí),來(lái)編寫(xiě)一個(gè)客車類和網(wǎng)吧類的收費(fèi)方法,本次實(shí)驗(yàn)具有完全的自主權(quán),雖然還是要按部就班來(lái),但是對(duì)其收費(fèi)方法的設(shè)置,可以完全根據(jù)你自己的想法來(lái)進(jìn)行編寫(xiě),可以復(fù)雜也可以簡(jiǎn)單,可以發(fā)揮你的想象去設(shè)置收費(fèi)的方式。
- 溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 《產(chǎn)品價(jià)值鏈與營(yíng)銷戰(zhàn)略》
- lecture 9(精品)
- Where’s your pen pal from (2)
- (精品)實(shí)驗(yàn)二血清γ球蛋白的分離純化與鑒定by陳蔚文
- 企業(yè)專利風(fēng)險(xiǎn)管理
- 高中記敘文寫(xiě)作指導(dǎo):寫(xiě)人要凸顯個(gè)性ppt課件
- 新生兒溶血病的發(fā)病機(jī)理臨床癥狀課件
- 7、艱辛的求索 (2)
- 學(xué)校心理健康教育組織管理課件
- IE七大手法的發(fā)展歷程
- 頸托的正確使用課件
- (精品)電功與電功率復(fù)習(xí)1
- 李曉光-管理學(xué)原理第十三章領(lǐng)導(dǎo)工作概述
- 固體中的相結(jié)構(gòu)
- 智能化酒店系統(tǒng)PPT