java課程設(shè)計-計算器的設(shè)計與實現(xiàn)_第1頁
java課程設(shè)計-計算器的設(shè)計與實現(xiàn)_第2頁
java課程設(shè)計-計算器的設(shè)計與實現(xiàn)_第3頁
java課程設(shè)計-計算器的設(shè)計與實現(xiàn)_第4頁
java課程設(shè)計-計算器的設(shè)計與實現(xiàn)_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

淮海工學(xué)院計算機工程學(xué)院課程設(shè)計報告設(shè)計名稱選題名稱

面向?qū)ο笳n程設(shè)計計算器的設(shè)計與實現(xiàn)姓

名:

學(xué)

號:專業(yè)班級系(院設(shè)計時間設(shè)計地點

計算機工學(xué)院軟件實驗、教室

成:年

面向?qū)ο笳n程設(shè)計報告

2

頁,共

15

頁《面向?qū)ο蟪绦蛟O(shè)計》是一門實踐性很強的計算機專業(yè)基礎(chǔ)課程,課程設(shè)計是學(xué)習(xí)完該課程后行的一次較全面的綜合練習(xí)。其目的在于通過實踐加深學(xué)生對面向?qū)ο蟪绦蛟O(shè)計的理論、方法基礎(chǔ)知識的理解,掌握使用Java語進行面向?qū)ο笤O(shè)計的本方法,提高運用面向?qū)ο笾R分析實際問題、解決實際問題的能力。課程設(shè)計可選用NetBeans、EclipseJBuilder作為開發(fā)平臺以提高開發(fā)效率,盡可能熟練掌握其中一種集成開發(fā)環(huán)境。建議采用UML建模技術(shù)進行系統(tǒng)的分析設(shè)計,在Visio中畫出統(tǒng)例圖和圖,并圖復(fù)到計報告通過這次設(shè)計,要求掌握以下內(nèi)容:1)面向?qū)ο蠹夹g(shù)中的繼承與多態(tài)(重載和覆蓋)機制、各種修飾符的使用2)類、包、接口的定義與使用3)常用工具類與算法的實現(xiàn)(數(shù)組、向量、字符串、鏈表)4)Java常用標(biāo)準(zhǔn)GUI組件及其事件處理5)Java的異常處理機制6)Java的數(shù)據(jù)庫連接技術(shù)7)Java的多線程技術(shù)與動畫制作8)Java的網(wǎng)絡(luò)編程

面向?qū)ο笳n程設(shè)計報告

3

頁,共

15

頁1、需求分析(用例圖)加減乘除階乘正弦用戶余弦歷史檢驗清空歷史圖1.例圖課題:計算器的設(shè)計與實現(xiàn)功能分析此計算器有連續(xù)運的功能然而在很多人使用計算器時容易忘掉之前是用8*2呢還是6*2,是這個計算器多出歷史檢驗的功能,可以將以前的式子顯示在下方,一邊檢驗正確與否。2、概要設(shè)計MultipleOperation類用來實現(xiàn)連續(xù)運算的類MultipleOperationtrans:

(

:

String)

面向?qū)ο笳n程設(shè)計報告

4

頁,共

15

頁類用來記錄歷史的類listflag:String()3.詳細(xì)設(shè)計MultipleOperationtrans:

(

:

String)publicMultipleOperation{publicvoid{manager=newScriptEngineenginetry{trans=engine.eval(expr));}e){trans="錯語"System.out.println(e);}}}listStr:Stringflag:String()

面向?qū)ο笳n程設(shè)計報告

5

頁,共

15

頁classlist{Str;flag;list(){Str="";Estr="";}toString(){//returnStr+"="+Estr;}}4.編程實Calculator;importjava.awt.event.*;importimportjava.util.*;public{int判點擊“=后點擊字按鈕重置文本框int用來加入列表第一行的提示intflag=0;//點列表后提結(jié)果的判定源judgeju;=true;equalOp="=";//opMultipleOperationCalcuOperation;listdata=new//ActionListener=/*classNumberListenerimplementsActionListener{*publicevent){*digit=*if{**=false;*}{*textfield.setText(textfield.getText()+digit);*}

面向?qū)ο笳n程設(shè)計報告

6

頁,共

15

頁*}*}***privatevoid*=true;**="=";*op.setTotal("0");*}**ActionListener{*publice){*if{**textfield.setText("0");*}{*=true;*displayText=textfield.getText();*if{**op.setTotal(displayText);*history.D="=";***}if(equalOp.equals("+")){***history.F="+";*}if{****}if(equalOp.equals("×")){*op.multiply(displayText);**history.F="×";*}if(equalOp.equals("÷")){***history.F="÷";*}if(equalOp.equals("^N")){***intA;*intB;

面向?qū)ο笳n程設(shè)計報告

7

頁,共

15

頁*inttrans=1;*****for(inti=0;i<B;i++){*trans*=A;*}**}*textfield.setText(""+*=*}*}*}*/publicjudge{publicvoidpan(){if(ClearNumber==0){textfield.setText("");}}}/*public{**privatetotal;*public{*=0;*}*public{*""+total;*}*publicsetTotal(Stringn){*=convertToNumber(n);*}*public{*+=convertToNumber(n);*}*publicsubtract(Stringn){*-=convertToNumber(n);*}*publicmultiply(Stringn){**=*}*

面向?qū)ο笳n程設(shè)計報告

8

頁,共

15

頁*publicdivide(String{*convertToNumber(n);*}**publicpower(Stringn){*=convertToNumber(n);*}***publicA(){**}*publicB(){**}**privateconvertToNumber(Stringn){**}*}*//***formNewJFrame*/public{initComponents();ju=new}voidevt){}voidbtnClearActionPerformed(java.awt.event.ActionEvent{textfield.setText(textfield.getText().substring(0,}

面向?qū)ο笳n程設(shè)計報告

9

頁,共

15

頁voidbtnEqual1ActionPerformed(java.awt.event.ActionEventevt){textfield.setText("");}voidjButton1ActionPerformed(java.awt.event.ActionEventevt){ju.pan();textfield.setText(textfield.getText()+"1");}voidjButton2ActionPerformed(java.awt.event.ActionEventevt){ju.pan();textfield.setText(textfield.getText()+"2");}voidjButton3ActionPerformed(java.awt.event.ActionEventevt){ju.pan();textfield.setText(textfield.getText()+"3");}voidjButton4ActionPerformed(java.awt.event.ActionEventevt){ju.pan();textfield.setText(textfield.getText()+"4");}voidjButton5ActionPerformed(java.awt.event.ActionEventevt){ju.pan();textfield.setText(textfield.getText()+"5");}voidjButton6ActionPerformed(java.awt.event.ActionEventevt){ju.pan();textfield.setText(textfield.getText()+"6");}voidjButton7ActionPerformed(java.awt.event.ActionEventevt){ju.pan();textfield.setText(textfield.getText()+"7");

面向?qū)ο笳n程設(shè)計報告

10

頁,共

15

頁}voidjButton8ActionPerformed(java.awt.event.ActionEventevt){ju.pan();textfield.setText(textfield.getText()+"8");}voidjButton9ActionPerformed(java.awt.event.ActionEventevt){ju.pan();textfield.setText(textfield.getText()+"9");}void{ju.pan();textfield.setText(textfield.getText()+"0");}voidevt){textfield.setText(textfield.getText()+"+");}voidbtnSubtractActionPerformed(java.awt.event.ActionEventevt){}void{textfield.setText(textfield.getText()+"*");}voidevt){textfield.setText(textfield.getText()+"/");}voidbtnEqualActionPerformed(java.awt.event.ActionEvent{//CalcuOperation;

面向?qū)ο笳n程設(shè)計報告

11頁,共

15

頁strans="";history.Str=textfield.getText();textfield.setText(CalcuOperation.trans);history.Estr=CalcuOperation.trans;strans=history.Str+"="+history.Estr;if(I==0&&textfield.getText()!=null){歷記錄如}錯誤語法"){}else{jlist.setListData(data);textfield.setText(CalcuOperation.trans);}}voidbtnBrackets1ActionPerformed(java.awt.event.ActionEventevt){}voidbtnBrackets2ActionPerformed(java.awt.event.ActionEventevt){}void{textfield.setText(history.flag.substring(history.flag.indexOf("=")+1,history.flag.length()));flag=1;}void{{a=textfield.getText().substring(0,textfield.getText().indexOf("."));轉(zhuǎn)換為二進制為:"+String.valueOf(Integer.toBinaryString(Integer.parseInt(a))));}{if(textfield.getText().indexOf(".")!=-1){

面向?qū)ο笳n程設(shè)計報告

12

頁,共

15

頁a=textfield.getText().substring(0,textfield.getText().indexOf("."));轉(zhuǎn)換為二進制為:"+String.valueOf(Integer.toBinaryString(Integer.parseInt(a))));}else{轉(zhuǎn)換為二進制為"}}}void{if(ClearNumber==0){a=textfield.getText().substring(0,textfield.getText().indexOf("."));轉(zhuǎn)換為八進制為:"}{if(textfield.getText().indexOf(".")!=-1){=textfield.getText().substring(0,轉(zhuǎn)換為八進制為:"}else{轉(zhuǎn)換為八進制為:"}}}void{if(ClearNumber==0){a=textfield.getText().substring(0,轉(zhuǎn)換為十六進制為:"}{if(textfield.getText().indexOf(".")!=-1){=textfield.getText().substring(0,轉(zhuǎn)換為十六進制為:"}else{轉(zhuǎn)換為十六進制為:"

面向?qū)ο笳n程設(shè)計報告

13

頁,共

1

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論