久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

Java程序設計實驗2

時間:2019-05-12 11:12:31下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了多篇相關的《Java程序設計實驗2》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《Java程序設計實驗2》。

第一篇:Java程序設計實驗2

學 生 實 驗 報 告 冊

課程名稱:

學生學號:

所屬院部:

(理工類)

專業班級:

學生姓名:

指導教師: ——20 學年 第 學期

金陵科技學院教務處制

實驗報告書寫要求

實驗報告原則上要求學生手寫,要求書寫工整。若因課程特點需打印的,標題采用四號黑體,正文采用小四號宋體,單倍行距。紙張一律采用A4的紙張。

實驗報告書寫說明

實驗報告中實驗目的和要求、實驗儀器和設備、實驗內容與過程、實驗結果與分析這四項內容為必需項。教師可根據學科特點和實驗具體要求增加項目。

填寫注意事項

(1)細致觀察,及時、準確、如實記錄。(2)準確說明,層次清晰。

(3)盡量采用專用術語來說明事物。

(4)外文、符號、公式要準確,應使用統一規定的名詞和符號。(5)應獨立完成實驗報告的書寫,嚴禁抄襲、復印,一經發現,以零分論處。

實驗報告批改說明

實驗報告的批改要及時、認真、仔細,一律用紅色筆批改。實驗報告的批改成績采用五級記分制或百分制,按《金陵科技學院課堂教學實施細則》中作業批閱成績評定要求執行。

實驗報告裝訂要求

實驗批改完畢后,任課老師將每門課程的每個實驗項目的實驗報告以自然班為單位、按學號升序排列,裝訂成冊,并附上一份該門課程的實驗大綱。

金陵科技學院實驗報告

實驗項目名稱: 面向對象編程實驗 實驗學時: 8 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗1 面向對象編程實驗

一、實驗目的和要求

(1)理解Java概念、掌握JDK環境配置(2)熟悉Java開發過程

(3)掌握Java面向對象編程基礎:封裝、繼承、多態(4)掌握Java接口編程,理解開發模式

二、實驗儀器和設備

奔騰以上個人計算機,windows操作系統。

配置好JDK環境,安裝集成開發環境(Eclipse)

三、實驗內容與過程

1、JDK環境配置

2、面向對象的封裝性

范例:設計一個表示學生的類,里面有學生的三項成績:計算機成績、數學成績、英語成績。要求可以求總分、平均分、最高分、最低分,并且可以輸出一個學生的完整信息。代碼如下: class Student{ private String name;private int age;private float english;private float computer;private float math;public Student(){} public Student(String n,int a,float e,float c,float m){

this.setName(n);

this.setAge(a);

this.setEnglish(e);

this.setComputer(c);

this.setMath(m);} public float sum(){

return english + computer + math;} public float avg(){

return this.sum()/ 3;} public float max(){

float max = computer>math?computer:math;

max = max>english?max:english;

return max;} public float min(){

float min = computer

min = min

return min;

金陵科技學院實驗報告

} public String getInfo(){

return “學生信息: n” +

“t|-姓名:” + this.getName()+ “n” +

“t|-年齡:” + this.getAge()+ “n” +

“t|-數學成績:” + this.getMath()+ “n” +

“t|-英語成績:” + this.getEnglish()+ “n” +

“t|-計算機成績:” + this.getComputer();} public void setName(String n){

name = n;} public void setAge(int a){

age = a;} public void setEnglish(float e){

english = e;} public void setComputer(float c){

computer = c;} public void setMath(float m){

math = m;} public String getName(){

return name;} public int getAge(){

return age;} public float getEnglish(){

return english;} public float getComputer(){

return computer;} public float getMath(){

return math;} } public class ExecDemo{ public static void main(String args[]){

Student stu = new Student(“張三”,30,89.0f,91.0f,87.0f);

System.out.println(“總分:” + stu.sum());

金陵科技學院實驗報告

}

} System.out.println(“平均分:” + stu.avg());System.out.println(“最高分:” + stu.max());System.out.println(“最低分:” + stu.min());System.out.println(stu.getInfo());對照范例寫出如下題目:

(1)編寫并測試一個代表地址的Address類,包括以下的屬性:國家、省份、城市、街道、郵編。

可以從此地址類中得到一個完整的地址信息。

(2)定義并測試一個代表員工的Employee類。它的屬性包括“員工姓名”、“員工號碼”、“員工基本薪水”,它的方法包括“構造方法”、“獲取員工姓名”、“獲取員工號碼”、“獲取員工基本薪水”、“設置員工姓名”、“設置員工號碼”、“設置員工基本薪水”、所有員工信息的輸出getInfo。(3)、定義一個圓形類,可以返回圓的面積與周長。

class Circle{

成員變量 半徑 r

構造方法

成員函數 設置和獲取 半徑

計算周長

計算面積

所有信息輸出 } 定義一個矩形類,返回矩形的面積與周長(4)、思考設計:一個人有一本書,一本書屬于一個人。//一個人有一本書,一本書屬于一個人 //類 新的類別、類型 定義新的數據類型 //兩個類的關系 獨立的兩個類 使用 class Person{ private String name;private int age;private Book book;//一個人有一本書 public Person(){

} public Person(String name,int age){ this.name=name;this.age=age;} public void setBook(Book book){ this.book=book;} public Book getBook(){ return this.book;

金陵科技學院實驗報告

} } class Book{ private String name;private float price;private Person person;//一本書屬于一個人 public Book(){ } public Book(String name,float price){ this.name=name;this.price=price;} public void setPerson(Person person){ this.person=person;} public Person getPerson(){ return this.person;} } public class TestBP{ public static void main(String args[]){ Person per=new Person(“zhangsan”,20);Book bok=new Book(“Java program”,20.0f);per.setBook(bok);//一個人有一本書

bok.setPerson(per);//一本書屬于一個人

per.getBook().getPrice();bok.getPerson().getName();} }

3、面向對象的繼承性

范例:要求定義一個數組類Array,里面定義了一個整型數組,但是此整型數組屬于動態分配大小,即:所有的大小由程序指定,并在此基礎上實現以下的兩個子類:

反轉類:可以將數組的內容反轉排列

排序類:可以對數組進行排序的操作 class Array{ private int temp[] = null;// 只是聲明數組,但是大小未知

private int foot = 0;// 用于保存下一個的記錄點

public Array(int len){

if(len>0){

this.temp = new int[len];// 此時大小由外部決定

}else{

this.temp = new int[1];// 至少開辟一個空間

} }

金陵科技學院實驗報告

public boolean add(int i){ // 加入數據操作

if(this.foot

this.temp[this.foot] = i;// 加入內容

this.foot++;// 改變長度

return true;// 加入成功返回true

}else{

return false;// 加入失敗

} } public int[] getArray(){ // 返回全部的數組

return this.temp;} } class SortArray extends Array{ public SortArray(int len){

super(len);} public int[] getArray(){

java.util.Arrays.sort(super.getArray());// 排序操作

return super.getArray();// 返回的是排序后的內容

} } class ReverseArray extends Array{ public ReverseArray(int len){

super(len);} public int[] getArray(){

int rt[] = new int[super.getArray().length];// 根據大小開辟新數組

int count = rt.length-1;

for(int x=0;x

rt[count] = super.getArray()[x];

count--;

}

return rt;} } public class ArrayDemo{ public static void main(String args[]){

ReverseArray arr = new ReverseArray(6);

System.out.println(arr.add(3));

System.out.println(arr.add(23));

System.out.println(arr.add(1));

System.out.println(arr.add(5));

金陵科技學院實驗報告

System.out.println(arr.add(6));

System.out.println(arr.add(8));

System.out.println(arr.add(11));

System.out.println(arr.add(16));

print(arr.getArray());} public static void print(int i[]){

for(int x=0;x

System.out.print(i[x] + “、”);

} } } 對照范例寫出如下題目:

(1).創建GrandFather類,其中包括

a)屬性:姓名(name),年齡(age)

b)方法getGrandFather():顯示爺爺的信息

c)構造方法:給爺爺的姓名,年齡賦值(2).創建Father類,繼承Grandfather類 a)屬性:除了繼承爺爺的屬性以外,還要增加自己的屬性:“職業”(occupation)b)構造方法:顯式調用父類的構造方法,為Father類的姓名和年齡賦初始值。再為職業輸入初始值。

c)方法getFather(): 顯示父親的相關信息

(3).創建ClassMain()類,定義main()方法,構造GrandFather類的對象和Father類的對象,并分別顯示詳細信息。

3、面向對象多態性

范例:計算柱體的體積。柱體體積計算公式是:底部面積乘以高度 柱體底部分為 圓形和矩形 要求:通過抽象類和多態實現 package cn.jit.demo;abstract class Bottom { //父類抽象類 底部

public abstract double calculatorArea();} class CircleBottom extends Bottom{ //圓形底

/** * 半徑

*/ private double radius;

@Override public double calculatorArea(){

return Math.PI * radius * radius;} public double getRadius(){

金陵科技學院實驗報告

return radius;} public void setRadius(double radius){

this.radius = radius;} public CircleBottom(double radius){

super();

this.radius = radius;} } class SquareBottom extends Bottom{ //矩形底

private double sideA;

private double sideB;public double getSideA(){

return sideA;} public void setSideA(double sideA){

this.sideA = sideA;} public double getSideB(){

return sideB;} public void setSideB(double sideB){

this.sideB = sideB;} @Override public double calculatorArea(){

return sideA * sideB;} public SquareBottom(double sideA, double sideB){

super();

this.sideA = sideA;

this.sideB = sideB;} } class ZhuTi { //柱體類,完成形狀的拼裝

/** * 底

*/ private Bottom bottom;/** * 高

*/

金陵科技學院實驗報告

private double height;/** * 計算體積

* @return */ public double calculatorVolumn(){

return bottom.calculatorArea()* height;} public ZhuTi(Bottom bottom, double height){

super();

this.bottom = bottom;

this.height = height;} public Bottom getBottom(){

return bottom;} public void setBottom(Bottom bottom){

this.bottom = bottom;} public double getHeight(){

return height;} public void setHeight(double height){

this.height = height;} public void changeBottom(Bottom bottom){

this.bottom = bottom;} } public class VolumnTest { //測試類

public static void main(String[] args){

Bottom bottom = new CircleBottom(1.0);

double height = 1.0;

ZhuTi zhuTi = new ZhuTi(bottom,height);

double result = zhuTi.calculatorVolumn();

System.out.println(“圓柱體的體積是:” + result);

bottom = new SquareBottom(1.0,1.0);

zhuTi.changeBottom(bottom);

result = zhuTi.calculatorVolumn();

System.out.println(“立方體的體積是:” + result);} } 范例:接口和多態的應用,例如:電腦上實現了USB接口,U盤,打印機等等也都實現了此標準。

金陵科技學院實驗報告

interface USB{ public void start();// 開始工作

public void stop();// 結束工作 } class Computer{ public static void plugin(USB usb){

usb.start();

usb.stop();} };class Flash implements USB{ public void start(){

System.out.println(“U盤開始工作。”);} public void stop(){

System.out.println(“U盤停止工作。”);} };class Print implements USB{ public void start(){

System.out.println(“打印機開始工作。”);} public void stop(){

System.out.println(“打印機停止工作。”);} };public class InterPolDemo02{ public static void main(String args[]){

Computer.plugin(new Flash());

Computer.plugin(new Print());} };對照范例,寫出以下程序:(1)樂器(Instrument)的標準為彈奏(play),而樂器類型分為:鋼琴(Piano)和小提琴(Violin),各種樂器的彈奏方法各不同。編寫代碼實現不同樂器的彈奏。(2)計算機模擬

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會

金陵科技學院實驗報告

實驗項目名稱: 類集

實驗學時: 4 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗2 類集

一、實驗目的和要求(1)理解類集概念

(2)熟悉Collection接口、List接口、Set接口和Map接口(3)掌握ArrayList類、HashSet類和TreeSet類(4)理解TreeMap、HashMap

二、實驗儀器和設備

奔騰以上個人計算機,windows操作系統。

配置好JDK環境,安裝集成開發環境(Eclipse)

三、實驗內容與過程

1、類集應用

范例:實現一個超市管理系統,要求可以添加貨物,刪除貨物和查詢貨物:

。代碼如下:

public interface Goods { public String getName();// 得到商品名稱

public int getCount();// 得到商品數量

public float getPrice();// 得到商品價格 }

public class Book implements Goods {

private String name;private int count;private float price;

public Book(){ }

public Book(String name, int count, float price){

this.name = name;

this.count = count;

this.price = price;}

public String getName(){

return name;}

public void setName(String name){

this.name = name;

金陵科技學院實驗報告

}

public int getCount(){

return count;}

public void setCount(int count){

this.count = count;}

public float getPrice(){

return price;}

public void setPrice(float price){

this.price = price;}

public boolean equals(Object obj){

if(this == obj){

return true;

}

if(!(obj instanceof Book)){

return false;

}

Book b =(Book)obj;

if(b.name.equals(this.name)&& b.count == this.count

&& b.price == this.price){

return true;

} else {

return false;

} }

public int hashCode(){

return this.name.hashCode()+ new Integer(this.count).hashCode()

+ new Float(this.price).hashCode();}

public String toString(){

return “書名:” + this.name + “;書的價格:” + this.price + “;書的數量:”

+ this.count;}

金陵科技學院實驗報告

}

import java.util.ArrayList;import java.util.Iterator;import java.util.List;

public class SuperMarket { private List allGoods;

public SuperMarket(){

this.allGoods = new ArrayList();}

public void add(Goods goods){

this.allGoods.add(goods);}

public void remove(Goods goods){

this.allGoods.remove(goods);}

public List search(String keyWord){

List temp = new ArrayList();

Iterator iter = this.allGoods.iterator();

while(iter.hasNext()){

Goods g = iter.next();

if(g.getName().indexOf(keyWord)!=-1){

temp.add(g);

}

}

return temp;}

public List getAllGoods(){

return this.allGoods;} }

import java.util.Iterator;import java.util.List;

public class Test {

金陵科技學院實驗報告

public static void main(String[] args){

SuperMarket mak = new SuperMarket();

mak.add(new Book(“Java”, 2, 30.9f));

mak.add(new Book(“C++”, 3, 10.9f));

mak.add(new Book(“JSP”, 5, 80.9f));

print(mak.search(“J”));

mak.remove(new Book(“Java”, 2, 30.9f));

print(mak.search(“J”));}

public static void print(List all){

Iterator iter = all.iterator();

while(iter.hasNext()){

System.out.println(iter.next());

} } } 對照范例寫出如下題目:

(1)寵物商店,要求可以添加、刪除和查找寵物(2)實現以下兩個關系

A、一個學校可以有多個學生,所有學生屬于一個學校

B、一門課程可以有多個學生選,一個學生可以選多門課程

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會

金陵科技學院實驗報告

實驗項目名稱: Java IO操作

實驗學時: 6 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗3 Java IO操作

一、實驗目的和要求

(1)理解輸入輸出流概念(2)掌握文件輸入輸出流

(3)掌握鍵盤的輸入、顯示器的輸出(4)理解其他輸入輸出流

二、實驗儀器和設備

奔騰以上個人計算機,windows操作系統。

配置好JDK環境,安裝集成開發環境(Eclipse)

三、實驗內容與過程

1、編寫類模擬命令Copy

范例:實現文件的復制代碼。參考代碼如下:

File file1 = new File(“d:”+File.seperator +”demo.txt”);

// 找到第一個文件的File對象

File file2 = new File(“d:”+File.seperator +”cemo.txt”);// 找到目標文件路徑 InputStream input = new FileInputStream(file1);// 輸入流 OutputStream output = new FileOutputStream(file2);// 輸出流 int temp = 0;// 定義一個整數表示接收的內容

while((temp = input.read())!=-1){ // 表示還有內容可以繼續讀

output.write(temp);// 寫入數據 } input.close();// 關閉 output.close();// 關閉

2、通過鍵盤的輸入,實現簡單的選項操作。

*********XXXX管理系統***********

[1]添加

[2]刪除

[3]修改

[4]查詢

[5]退出

3、編寫一個簡單管理系統,實現真實的操作。

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會

金陵科技學院實驗報告

實驗項目名稱: JDBC

實驗學時: 6 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗4 JDBC

一、實驗目的和要求(1)理解JDBC分類

(2)掌握JDBC數據庫連接步驟

(3)掌握JDBC連接MySQL數據庫代碼(4)理解JDBC連接其他數據庫方式

二、實驗儀器和設備

奔騰以上個人計算機,windows操作系統。

配置好JDK環境,安裝集成開發環境(Eclipse)

三、實驗內容與過程

1、安裝MySQL數據庫,配置好數據庫

創建一個數據庫表,按要求給出詳細的字段設計

pid name age birthday salary

主要操作:

2、創建Eclipse項目,配置驅動包

每個數據庫廠商都會提供對Java開發技術的支持,即都會提供對應的Java驅動,也就是一個jar包

主要操作:

3、項目中建立一個詳細例子,按照要求連接、操作、關閉數據庫

按照標準的步驟完成對MySQL數據庫的操作

主要代碼:(添加、修改、刪除和查詢)

金陵科技學院實驗報告

4、試著連接其他類型數據庫。

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會

第二篇:Java程序設計實驗

學 生 實 驗 報 告 冊

課程名稱:

學生學號:

所屬院部:

(理工類)

專業班級:

學生姓名:

指導教師: ——20 學年 第 學期

金陵科技學院教務處制

實驗報告書寫要求

實驗報告原則上要求學生手寫,要求書寫工整。若因課程特點需打印的,標題采用四號黑體,正文采用小四號宋體,單倍行距。紙張一律采用A4的紙張。

實驗報告書寫說明

實驗報告中實驗目的和要求、實驗儀器和設備、實驗內容與過程、實驗結果與分析這四項內容為必需項。教師可根據學科特點和實驗具體要求增加項目。

填寫注意事項

(1)細致觀察,及時、準確、如實記錄。(2)準確說明,層次清晰。

(3)盡量采用專用術語來說明事物。

(4)外文、符號、公式要準確,應使用統一規定的名詞和符號。(5)應獨立完成實驗報告的書寫,嚴禁抄襲、復印,一經發現,以零分論處。

實驗報告批改說明

實驗報告的批改要及時、認真、仔細,一律用紅色筆批改。實驗報告的批改成績采用五級記分制或百分制,按《金陵科技學院課堂教學實施細則》中作業批閱成績評定要求執行。

實驗報告裝訂要求

實驗批改完畢后,任課老師將每門課程的每個實驗項目的實驗報告以自然班為單位、按學號升序排列,裝訂成冊,并附上一份該門課程的實驗大綱。

金陵科技學院實驗報告

實驗項目名稱: 面向對象編程實驗 實驗學時: 8 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗1 面向對象編程實驗

一、實驗目的和要求

(1)理解Java概念、掌握JDK環境配置(2)熟悉Java開發過程

(3)掌握Java面向對象編程基礎:封裝、繼承、多態(4)掌握Java接口編程,理解開發模式

二、實驗儀器和設備

奔騰以上個人計算機,windows操作系統。

配置好JDK環境,安裝集成開發環境(Eclipse)

三、實驗內容與過程

1、JDK環境配置

2、面向對象的封裝性

范例:設計一個表示學生的類,里面有學生的三項成績:計算機成績、數學成績、英語成績。要求可以求總分、平均分、最高分、最低分,并且可以輸出一個學生的完整信息。代碼如下: class Student{ private String name;private int age;private float english;private float computer;private float math;public Student(){} public Student(String n,int a,float e,float c,float m){

this.setName(n);

this.setAge(a);

this.setEnglish(e);

this.setComputer(c);

this.setMath(m);} public float sum(){

return english + computer + math;} public float avg(){

return this.sum()/ 3;} public float max(){

float max = computer>math?computer:math;

max = max>english?max:english;

return max;} public float min(){

float min = computer

min = min

return min;

金陵科技學院實驗報告

} public String getInfo(){

return “學生信息: n” +

“t|-姓名:” + this.getName()+ “n” +

“t|-年齡:” + this.getAge()+ “n” +

“t|-數學成績:” + this.getMath()+ “n” +

“t|-英語成績:” + this.getEnglish()+ “n” +

“t|-計算機成績:” + this.getComputer();} public void setName(String n){

name = n;} public void setAge(int a){

age = a;} public void setEnglish(float e){

english = e;} public void setComputer(float c){

computer = c;} public void setMath(float m){

math = m;} public String getName(){

return name;} public int getAge(){

return age;} public float getEnglish(){

return english;} public float getComputer(){

return computer;} public float getMath(){

return math;} } public class ExecDemo{ public static void main(String args[]){

Student stu = new Student(“張三”,30,89.0f,91.0f,87.0f);

System.out.println(“總分:” + stu.sum());

金陵科技學院實驗報告

}

} System.out.println(“平均分:” + stu.avg());System.out.println(“最高分:” + stu.max());System.out.println(“最低分:” + stu.min());System.out.println(stu.getInfo());對照范例寫出如下題目:

(1)編寫并測試一個代表地址的Address類,包括以下的屬性:國家、省份、城市、街道、郵編。注意:

1、體現封裝

2、構造方法(最少2個)

3、要有輸出(可以從此地址類中得到一個完整的地址信息)。

4、測試 主類 main

(2)定義并測試一個代表員工的Employee類。它的屬性包括“員工姓名”、“員工號碼”、“員工基本薪水”;它的方法包括“構造方法”、“獲取員工姓名”、“獲取員工號碼”、“獲取員工基本薪水”、“設置姓名”、“設置員工號碼”、“設置基本薪水”。測試(3)、定義一個圓形類(半徑屬性),封裝、構造、整個輸出、可以返回圓的面積與周長。測試

(4)、思考設計:一個人有一本書,一本書屬于一個人。

3、面向對象的繼承性

范例:要求定義一個數組類Array,里面定義了一個整型數組,但是此整型數組屬于動態分配大小,即:所有的大小由程序指定,并在此基礎上實現以下的兩個子類:

反轉類:可以將數組的內容反轉排列

排序類:可以對數組進行排序的操作 class Array{ private int temp[] = null;// 只是聲明數組,但是大小未知

private int foot = 0;// 用于保存下一個的記錄點

public Array(int len){

if(len>0){

this.temp = new int[len];// 此時大小由外部決定

}else{

this.temp = new int[1];// 至少開辟一個空間

} } public boolean add(int i){ // 加入數據操作

if(this.foot

this.temp[this.foot] = i;// 加入內容

this.foot++;// 改變長度

return true;// 加入成功返回true

}else{

return false;// 加入失敗

} } public int[] getArray(){ // 返回全部的數組

return this.temp;}

金陵科技學院實驗報告

} class SortArray extends Array{ public SortArray(int len){

super(len);} public int[] getArray(){

java.util.Arrays.sort(super.getArray());// 排序操作

return super.getArray();// 返回的是排序后的內容

} } class ReverseArray extends Array{ public ReverseArray(int len){

super(len);} public int[] getArray(){

int rt[] = new int[super.getArray().length];// 根據大小開辟新數組

int count = rt.length-1;

for(int x=0;x

rt[count] = super.getArray()[x];

count--;

}

return rt;} } public class ArrayDemo{ public static void main(String args[]){

ReverseArray arr = new ReverseArray(6);

System.out.println(arr.add(3));

System.out.println(arr.add(23));

System.out.println(arr.add(1));

System.out.println(arr.add(5));

System.out.println(arr.add(6));

System.out.println(arr.add(8));

System.out.println(arr.add(11));

System.out.println(arr.add(16));

print(arr.getArray());} public static void print(int i[]){

for(int x=0;x

System.out.print(i[x] + “、”);

} } }

金陵科技學院實驗報告

對照范例寫出如下題目:

(1).創建GrandFather類,其中包括

a)屬性:姓名(name),年齡(age)

b)方法getGrandFather():顯示爺爺的信息

c)構造方法:給爺爺的姓名,年齡賦值(2).創建Father類,繼承Grandfather類 a)屬性:除了繼承爺爺的屬性以外,還要增加自己的屬性:“職業”(occupation)b)構造方法:顯式調用父類的構造方法,為Father類的姓名和年齡賦初始值。再為職業輸入初始值。

c)方法getFather(): 顯示父親的相關信息

(3).創建ClassMain()類,定義main()方法,構造GrandFather類的對象和Father類的對象,并分別顯示詳細信息。

3、面向對象多態性

范例:計算柱體的體積。柱體體積計算公式是:底部面積乘以高度 柱體底部分為 圓形和矩形 要求:通過抽象類和多態實現 package cn.jit.demo;abstract class Bottom { //父類抽象類 底部

public abstract double calculatorArea();} class CircleBottom extends Bottom{ //圓形底

/** * 半徑

*/ private double radius;

@Override public double calculatorArea(){

return Math.PI * radius * radius;} public double getRadius(){

return radius;} public void setRadius(double radius){

this.radius = radius;} public CircleBottom(double radius){

super();

this.radius = radius;} } class SquareBottom extends Bottom{ //矩形底

private double sideA;

金陵科技學院實驗報告

private double sideB;public double getSideA(){

return sideA;} public void setSideA(double sideA){

this.sideA = sideA;} public double getSideB(){

return sideB;} public void setSideB(double sideB){

this.sideB = sideB;} @Override public double calculatorArea(){

return sideA * sideB;} public SquareBottom(double sideA, double sideB){

super();

this.sideA = sideA;

this.sideB = sideB;} } class ZhuTi { //柱體類,完成形狀的拼裝

/** * 底

*/ private Bottom bottom;/** * 高

*/ private double height;/** * 計算體積

* @return */ public double calculatorVolumn(){

return bottom.calculatorArea()* height;} public ZhuTi(Bottom bottom, double height){

super();

this.bottom = bottom;

this.height = height;

金陵科技學院實驗報告

} public Bottom getBottom(){

return bottom;} public void setBottom(Bottom bottom){

this.bottom = bottom;} public double getHeight(){

return height;} public void setHeight(double height){

this.height = height;} public void changeBottom(Bottom bottom){

this.bottom = bottom;} } public class VolumnTest { //測試類

public static void main(String[] args){

Bottom bottom = new CircleBottom(1.0);

double height = 1.0;

ZhuTi zhuTi = new ZhuTi(bottom,height);

double result = zhuTi.calculatorVolumn();

System.out.println(“圓柱體的體積是:” + result);

bottom = new SquareBottom(1.0,1.0);

zhuTi.changeBottom(bottom);

result = zhuTi.calculatorVolumn();

System.out.println(“立方體的體積是:” + result);} } 范例:接口和多態的應用,例如:電腦上實現了USB接口,U盤,打印機等等也都實現了此標準。interface USB{ public void start();// 開始工作

public void stop();// 結束工作 } class Computer{ public static void plugin(USB usb){

usb.start();

usb.stop();} };class Flash implements USB{ public void start(){

金陵科技學院實驗報告

System.out.println(“U盤開始工作。”);} public void stop(){

System.out.println(“U盤停止工作。”);} };class Print implements USB{ public void start(){

System.out.println(“打印機開始工作。”);} public void stop(){

System.out.println(“打印機停止工作。”);} };public class InterPolDemo02{ public static void main(String args[]){

Computer.plugin(new Flash());

Computer.plugin(new Print());} };對照范例,寫出以下程序:(1)樂器(Instrument)的標準為彈奏(play),而樂器類型分為:鋼琴(Piano)和小提琴(Violin),各種樂器的彈奏方法各不同。編寫代碼實現不同樂器的彈奏。(2)計算機模擬

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會

金陵科技學院實驗報告

實驗項目名稱: 類集

實驗學時: 4 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗2 類集

一、實驗目的和要求(1)理解類集概念

(2)熟悉Collection接口、List接口、Set接口和Map接口(3)掌握ArrayList類、HashSet類和TreeSet類(4)理解TreeMap、HashMap

二、實驗儀器和設備

奔騰以上個人計算機,windows操作系統。

配置好JDK環境,安裝集成開發環境(Eclipse)

三、實驗內容與過程

1、類集應用

范例:實現一個超市管理系統,要求可以添加貨物,刪除貨物和查詢貨物:

。代碼如下:

public interface Goods { public String getName();// 得到商品名稱

public int getCount();// 得到商品數量

public float getPrice();// 得到商品價格 }

public class Book implements Goods {

private String name;private int count;private float price;

public Book(){ }

public Book(String name, int count, float price){

this.name = name;

this.count = count;

this.price = price;}

public String getName(){

return name;}

public void setName(String name){

this.name = name;

金陵科技學院實驗報告

}

public int getCount(){

return count;}

public void setCount(int count){

this.count = count;}

public float getPrice(){

return price;}

public void setPrice(float price){

this.price = price;}

public boolean equals(Object obj){

if(this == obj){

return true;

}

if(!(obj instanceof Book)){

return false;

}

Book b =(Book)obj;

if(b.name.equals(this.name)&& b.count == this.count

&& b.price == this.price){

return true;

} else {

return false;

} }

public int hashCode(){

return this.name.hashCode()+ new Integer(this.count).hashCode()

+ new Float(this.price).hashCode();}

public String toString(){

return “書名:” + this.name + “;書的價格:” + this.price + “;書的數量:”

+ this.count;}

金陵科技學院實驗報告

}

import java.util.ArrayList;import java.util.Iterator;import java.util.List;

public class SuperMarket { private List allGoods;

public SuperMarket(){

this.allGoods = new ArrayList();}

public void add(Goods goods){

this.allGoods.add(goods);}

public void remove(Goods goods){

this.allGoods.remove(goods);}

public List search(String keyWord){

List temp = new ArrayList();

Iterator iter = this.allGoods.iterator();

while(iter.hasNext()){

Goods g = iter.next();

if(g.getName().indexOf(keyWord)!=-1){

temp.add(g);

}

}

return temp;}

public List getAllGoods(){

return this.allGoods;} }

import java.util.Iterator;import java.util.List;

public class Test {

金陵科技學院實驗報告

public static void main(String[] args){

SuperMarket mak = new SuperMarket();

mak.add(new Book(“Java”, 2, 30.9f));

mak.add(new Book(“C++”, 3, 10.9f));

mak.add(new Book(“JSP”, 5, 80.9f));

print(mak.search(“J”));

mak.remove(new Book(“Java”, 2, 30.9f));

print(mak.search(“J”));}

public static void print(List all){

Iterator iter = all.iterator();

while(iter.hasNext()){

System.out.println(iter.next());

} } } 對照范例寫出如下題目:

(1)寵物商店,要求可以添加、刪除和查找寵物(2)實現以下兩個關系

A、一個學校可以有多個學生,所有學生屬于一個學校

B、一門課程可以有多個學生選,一個學生可以選多門課程

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會

金陵科技學院實驗報告

實驗項目名稱: Java IO操作

實驗學時: 6 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗3 Java IO操作

一、實驗目的和要求

(1)理解輸入輸出流概念(2)掌握文件輸入輸出流

(3)掌握鍵盤的輸入、顯示器的輸出(4)理解其他輸入輸出流

二、實驗儀器和設備

奔騰以上個人計算機,windows操作系統。

配置好JDK環境,安裝集成開發環境(Eclipse)

三、實驗內容與過程

1、編寫類模擬命令Copy

范例:實現文件的復制代碼。參考代碼如下:

File file1 = new File(“d:”+File.seperator +”demo.txt”);

// 找到第一個文件的File對象

File file2 = new File(“d:”+File.seperator +”cemo.txt”);// 找到目標文件路徑 InputStream input = new FileInputStream(file1);// 輸入流 OutputStream output = new FileOutputStream(file2);// 輸出流 int temp = 0;// 定義一個整數表示接收的內容

while((temp = input.read())!=-1){ // 表示還有內容可以繼續讀

output.write(temp);// 寫入數據 } input.close();// 關閉 output.close();// 關閉

2、通過鍵盤的輸入,實現簡單的選項操作。

*********XXXX管理系統***********

[1]添加

[2]刪除

[3]修改

[4]查詢

[5]退出

3、編寫一個簡單管理系統,實現真實的操作。

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會

金陵科技學院實驗報告

實驗項目名稱: JDBC

實驗學時: 6 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗4 JDBC

一、實驗目的和要求(1)理解JDBC分類

(2)掌握JDBC數據庫連接步驟

(3)掌握JDBC連接MySQL數據庫代碼(4)理解JDBC連接其他數據庫方式

二、實驗儀器和設備

奔騰以上個人計算機,windows操作系統。

配置好JDK環境,安裝集成開發環境(Eclipse)

三、實驗內容與過程

1、安裝MySQL數據庫,配置好數據庫

創建一個數據庫表,按要求給出詳細的字段設計

pid name age birthday salary

主要操作:

2、創建Eclipse項目,配置驅動包

每個數據庫廠商都會提供對Java開發技術的支持,即都會提供對應的Java驅動,也就是一個jar包

主要操作:

3、項目中建立一個詳細例子,按照要求連接、操作、關閉數據庫

按照標準的步驟完成對MySQL數據庫的操作

主要代碼:(添加、修改、刪除和查詢)

金陵科技學院實驗報告

4、試著連接其他類型數據庫。

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會

第三篇:Java Web程序設計(04112560)--實驗7

實驗項目七

1、實驗項目名稱: 監聽和過濾

2、實驗項目性質:驗證性

3、實驗要求:必修

4、計劃學時數:2學時

5、實驗內容:

(1).實現網上書店項目后臺管理用戶的過濾功能。具體要求如下:

? 禁止用戶非法訪問,只有登錄成功才能訪問后臺頁面。

? 沒有登錄,直接訪問后臺其他頁面,將跳轉到登錄頁面。

(2).在網上書店項目中增加監聽功能,當用戶登錄成功時自動更新數據庫中該用戶的登錄次數。

(3).實現網上書店項目后臺圖書管理中的修改圖書信息功能模塊。具體要求如下: ? 在圖書管理頁面bookManager.jsp中,單擊“修改圖書信息”按鈕,對選定的圖書進行修改。

? 一次只能修改一本圖書信息。

? 修改頁面中顯示圖書的原有數據。

? 圖書ISBN不可修改。

(4).實現網上書店項目后臺用戶管理中的修改用戶信息功能模塊。具體要求如下: ? 在用戶管理頁面userManager.jsp頁面中,單擊“修改用戶信息”按鈕,對選定的用戶信息進行修改。

? 一次只能修改一個用戶信息。

? 修改頁面中顯示該用戶原有信息。

? 用戶名不可修改。

根據第七章所學內容以及上機實踐情況,在實驗報告中完成以下問題。

(1).編寫一個過濾器,名稱為ForceNoCacheFilter,通過使用此過濾器使瀏覽器不緩存任何頁面。在實驗報告中給出其中的關鍵代碼。

(2).畫圖說明Servlet上下文監聽器的工作流程。

6、項目需用儀器設備名稱: 計算機

7、所需主要元器件及耗材:無

8、實驗項目目的和任務:

(1).了解監聽器原理及生命周期中的方法。

(2).掌握Servlet上下文監聽。掌握HTTP會話監聽。了解請求監聽。

(3).理解過濾器原理及生命周期。掌握實現一個過濾器的步驟。了解過濾器鏈。

第四篇:Java程序設計課程實驗代碼及答案

Java程序設計課程實驗

上機實踐1 初識JAVA.................................................................................................................3 實驗

1一個簡單的應用程序....................................................................................................3 實驗

2一個簡單的JAVA APPLET程序......................................................................................3 實驗

3聯合編譯........................................................................................................................4 上機實踐2 基本數據類型與控制語句........................................................................................5 實驗1

輸出希臘字母表............................................................................................................5 實驗2

回文數............................................................................................................................6 實驗3

猜數字游戲....................................................................................................................8 上機實踐3 類與對象....................................................................................................................9 實驗1

三角形、梯形和圓形的類封裝.....................................................................................9 實驗

2實例成員與類成員......................................................................................................12 實驗

3使用PACKAGE語句與IMPORT語句............................................................................14 上機實踐4 繼承與接口..............................................................................................................16 實驗

1繼承..............................................................................................................................16 實驗2

上轉型對象..................................................................................................................19 實驗3 接口回調.....................................................................................................................21 上機實踐5 字符串、時間與數字..............................................................................................23 實驗

1STRING類的常用方法..................................................................................................23 實驗

2比較日期的大小..........................................................................................................24 實驗

3處理大整數..................................................................................................................25 上機實踐6 組件及事件處理......................................................................................................26 實驗1

算術測試......................................................................................................................26 實驗2

信號燈..........................................................................................................................29 實驗3

布局與日歷..................................................................................................................31 上機實踐7 組件及事件處理2...................................................................................................35 實驗1

方程求根......................................................................................................................35 實驗2

字體對話框..................................................................................................................38 實驗3

英語單詞拼寫訓練......................................................................................................41 上機實踐8 多線程.....................................................................................................................45 實驗1

漢字打字練習..............................................................................................................45 實驗2

旋轉的行星..................................................................................................................47 實驗3

雙線程接力..................................................................................................................51 上機實踐9 輸入輸出流..............................................................................................................54 實驗1

學讀漢字......................................................................................................................54 實驗2

統計英文單詞字..........................................................................................................57 實驗2

讀取ZIP文件...............................................................................................................61 上機實踐10 JAVA 中的網絡編程............................................................................................62 實驗1

讀取服務器端文件......................................................................................................62 實驗2

使用套接字讀取服務器端對象...................................................................................64 實驗3

基于UDP的圖像傳輸................................................................................................67 上機實踐11 數據結構................................................................................................................71 實驗1

掃雷小游戲..................................................................................................................71 實驗2

排序與查找..................................................................................................................76 實驗3

使用TREESET排序......................................................................................................77 上機實踐12 JAVA SWING.......................................................................................................79 實驗1

JLAYEREDPANE分層窗格............................................................................................79 實驗2

使用表格顯示日歷......................................................................................................80 實驗3

多文檔界面(MDI)...................................................................................................83 2

上機實踐1 初識Java 實驗1 一個簡單的應用程序

1.答案:

【代碼1】:

System.out.println(“你好,很高興學習Java”);【代碼2】:

System.out.println(“We are students”);2.模板代碼

Hello.java public class Hello {

public static void main(String args[ ])

{

【代碼1】

//命令行窗口輸出“你好,很高興學習Java”

A a=new A();

a.fA();

} } class A {

void fA()

{

【代碼2】

//命令行窗口輸出“We are students”

} } 實驗2 一個簡單的Java Applet程序

1.答案:

【代碼1】:

g.drawString(“這是一個Java Applet 程序”,10,30);【代碼2】:

g.drawString(“我改變了字體”,20,50);2.模板代碼

FirstApplet.java import java.applet.*;3 import java.awt.*;public class FirstApplet extends Applet { public void paint(Graphics g){ g.setColor(Color.blue);【代碼1】//在Java Applet中繪制一行文字:“這是一個Java Applet 程序” g.setColor(Color.red);g.setFont(new Font(“宋體”,Font.BOLD,36));【代碼2】//在Java Applet中繪制一行文字:“我改變了字體” } } 實驗3 聯合編譯

1.答案:

【代碼1】:

System.out.println(“你好,只需編譯我”);【代碼2】:

System.out.println(“I am A”);【代碼3】:

System.out.println(“I am B”);【代碼4】:

System.out.println(“I am C”);2.模板代碼

模板1:Hello.java public class MainClass { public static void main(String args[ ]){ 【代碼1】 //命令行窗口輸出“你好,只需編譯我” A a=new A();a.fA();B b=new B();b.fB();} }

模板2 :A.java

public class A { void fA(){ 【代碼2】 //命令行窗口輸出“I am A” } } 模板3 :B.java

public class B { void fB(){ 【代碼3】 //命令行窗口輸出“I am B” } } 模板4 :C.java

public class C { void fC(){ 【代碼4】 //命令行窗口輸出“I am C” } }

上機實踐2 基本數據類型與控制語句實驗1 輸出希臘字母表

1.答案:

【代碼1】: startPosition=(int)cStart;

【代碼2】: endPosition=(int)cEnd;

【代碼3】: c=(char)i;

2.模板代碼

GreekAlphabet.java

public class GreekAlphabet {

public static void main(String args[ ])

{

int startPosition=0,endPosition=0;

char cStart='α',cEnd='ω';

【代碼1】

//cStart做int型轉換據運算,并將結果賦值給startPosition

【代碼2】

//cEnd做int型轉換運算,并將結果賦值給endPosition

System.out.println(“希臘字母'α'在unicode表中的順序位置:”+(int)c);

System.out.println(“希臘字母表:”);

for(int i=startPosition;i<=endPosition;i++)

{

char c='

主站蜘蛛池模板: 成人精品一区二区久久久| 亚洲精品久久久久久一区二区| 国产一区二区三区在线观看免费| 国产精品综合一区二区三区| 一本色道久久88—综合亚洲精品| 亚洲精品一区二区国产精华液| 少妇人妻精品一区二区三区| 少妇人妻88久久中文字幕| 美女又黄又免费的视频| 韩国午夜理伦三级在线观看| 99久久精品国产免费看| 亚洲精品一区中文字幕乱码| 18黄暴禁片在线观看| 色老板精品视频在线观看| 伊人色综合一区二区三区| 欧美性大战久久久久久| 欧美大屁股熟妇bbbbbb| 国内精品久久久久影院网站| 夜色毛片永久免费| 水蜜桃色314在线观看| 中文字幕av无码一区二区三区电影| 久久久久亚洲精品无码系列| 一区二区三区视频| 欧洲亚洲色一区二区色99| 成·人免费午夜无码视频蜜芽| 国产无套露脸在线观看| 国产成人福利美女观看视频| 五十六十日本老熟妇乱| 强行糟蹋人妻hd中文字幕| 国产午夜福利久久精品| 欧美色欧美亚洲另类二区| 日韩人妻无码中文字幕视频| 综合久久—本道中文字幕| 久热这里只精品99国产6-99re视…| 亚洲一区二区女搞男| 久久av青久久久av三区三区| 狠狠爱无码一区二区三区| 一本久久知道综合久久| 欧美人善z0zo性伦交高清| 亚洲国产欧美在线看片一国产| 无遮挡啪啪摇乳动态图gif|