陳子豪
摘 要:隨著信息化技術(shù)的不斷發(fā)展,該技術(shù)在各行各業(yè)中的應(yīng)用也是越來越廣泛,這對行業(yè)的發(fā)展起到了很好的推動作用。Java Swing就是計算機信息技術(shù)的應(yīng)用,作為一種先進的知識技術(shù),它的合理有效使用對人們的生活具有重要的影響,在人們的生活中計算器的使用十分廣泛并為人們的生活和工作帶來了很大的便利,本文就針對Java Swing下計算器的設(shè)計與實現(xiàn)進行分析,來了解計算器設(shè)計和實現(xiàn)的過程。
關(guān)鍵詞:Java Swing 計算器 設(shè)計與實現(xiàn)
中圖分類號:TP311.52 文獻標識碼:A 文章編號:1674-098X(2017)11(b)-0111-02
計算器的使用在人們的生活和工作中十分廣泛,也是人們最為常用的信息技術(shù)產(chǎn)品,雖然計算器的使用比較頻繁,但是很多人對計算器的使用原理并不是很清楚,其實計算器的設(shè)計與實現(xiàn)是通過Java Swing信息技術(shù)來完成的,而Java Swing下計算器的設(shè)計是怎樣實現(xiàn)的,這就是本文主要研究和分析的內(nèi)容。
1 Java Swing下計算器的設(shè)計概論
1.1 設(shè)計的目的思路
在計算器的設(shè)計中,是利用Java Swing圖形界面來設(shè)計計算器的一個使用界面,這個是一個虛擬的模擬界面,在計算器的模擬界面中還需要設(shè)置一定的按鈕功能,根據(jù)具體的按鈕功能就能夠進行有效的實現(xiàn)。在對按鈕的功能實現(xiàn)中,還要對各個按鈕采取相應(yīng)的算法設(shè)置,進行相應(yīng)的點擊后,就能夠嚴格地執(zhí)行按鈕的算法程序。按鈕算法的設(shè)置包括很多的內(nèi)容,不僅有數(shù)字按鈕的設(shè)置,同時還涉及到加減乘除以及平方和根等復(fù)雜的公式運算,這就需要利用Java Swing中的轉(zhuǎn)換函數(shù)來實現(xiàn),進而將相應(yīng)的結(jié)果呈現(xiàn)在計算器的顯示屏中。
1.2 功能模塊的設(shè)計
在計算器的使用中,常常涉及到一定的算法,算法包括的內(nèi)容也是多種多樣,在不同算法結(jié)果的實現(xiàn)中,就需要采取不同的進制轉(zhuǎn)換方法,這也是計算器功能模塊設(shè)計實現(xiàn)中的重點。在計算器的功能模塊中,主要包括加減乘除、開平方、求余數(shù)以及倒數(shù)等,這些是計算器中常用到的功能,對于加減乘除功能模塊的設(shè)計就比較簡單,而對于開平方就需要設(shè)置對任意一個數(shù)的開平方運算,也可以是小數(shù),對于倒數(shù)的運算,就需要涉及到正弦、余弦、正切以及余切等運算,過程就相對比較復(fù)雜,對于其中運算的轉(zhuǎn)換,主要是通過將十進制進行二進制的轉(zhuǎn)換或者將二進制進行十進制的轉(zhuǎn)換[1]。
1.3 設(shè)計開發(fā)的環(huán)境
本文對于計算器的設(shè)計開發(fā)主要是通過Java軟件應(yīng)用程序來進行實現(xiàn)的,而Swing是Java軟件應(yīng)用程序的用戶界面開發(fā)包,它主要是通過相應(yīng)抽象的Java軟件窗口工具開發(fā)包來進行跨平臺的設(shè)計和開發(fā),進而插入相應(yīng)的外觀類型和風格。Java Swing的應(yīng)用過程中,只是利用很少的信息數(shù)據(jù)代碼就就可以使用Swing的豐富靈活性來進行功能的模塊化設(shè)計,進而來創(chuàng)建一個優(yōu)雅有效的相關(guān)用戶界面,這也為計算器的設(shè)計開發(fā)提供了良好的環(huán)境。
2 程序的設(shè)計
2.1 計算器面板設(shè)計
Java Swing下計算器的設(shè)計,首先在設(shè)計的時候要對計算器的板面進行設(shè)計規(guī)劃,對每一部分功能進行計劃安排,再對每一個按鍵進行具體位置的確定,最后對計算器輸入信號進行轉(zhuǎn)換設(shè)計。在對計算器輸入信號的轉(zhuǎn)換設(shè)計中,首先是對輸入數(shù)字的轉(zhuǎn)換設(shè)計,在輸入數(shù)字的轉(zhuǎn)換中,如果不進行相應(yīng)的轉(zhuǎn)換操作的設(shè)計就采用默認的十進制方法進行,然后是對相關(guān)符號以及函數(shù)的轉(zhuǎn)換設(shè)計,另外還要進行加減乘除簡單運算法則的轉(zhuǎn)換設(shè)計,在這些設(shè)計中,還要涉及到退格、刪除、清空等功能鍵的設(shè)計,在清空功能的設(shè)計中還要設(shè)計清空顯示為0的效果,最后還要設(shè)計幫助中的開發(fā)人和產(chǎn)品信息的介紹。
2.2 程序設(shè)計思路
Java Swing下計算器的設(shè)計,主要是利用Swing信息技術(shù)來設(shè)計計算器相關(guān)組件的構(gòu)造,從而實現(xiàn)對計算器界面的設(shè)計和規(guī)劃。Swing信息技術(shù)構(gòu)建的計算器界面中,主要可以分為上、中、下3個部分,在計算器的上面部分主要是一個關(guān)于JTextField的對象,中間部分主要是設(shè)置一個為FlowLayout布局的JPanel對象,進而在這個對象的基礎(chǔ)上,靠右再放置了兩個JButton的對象,下面的部分主要是設(shè)置了一個為4行4列的GridLayout布局的JPanel對象,進而在這個對象的基礎(chǔ)上,再放置16個JButton的對象。計算器的這3個部分分別放置在一個默認布局為BorderLayout的JFrame對象上,在這個對象上分別設(shè)有NORTH、CENTER和SOUTH區(qū)并將這三部分放入相應(yīng)的位置[2]。
3 功能的實現(xiàn)
3.1 界面的功能的實現(xiàn)
在Java Swing下計算器的設(shè)計中,主要是設(shè)置3個相互分離的對象來對所需要操作事件進行分析和處理,這3個相互分離的對象分別是事件源、事件以及監(jiān)聽器,這3個相互分離的對象是存在一定的處理關(guān)系的,當事件源發(fā)生后就會觸發(fā)相應(yīng)的事件動作,進而這個事件動作會被一個或者多個相應(yīng)的監(jiān)聽器所接收到,進而監(jiān)聽器就會產(chǎn)生一定的指令動作來對相應(yīng)的事件進行處理。在這個過程中,監(jiān)聽器發(fā)揮著重要的作用,它主要是以一個“實現(xiàn)特定類型監(jiān)聽器接口”的對象形式而存在的,另外,還需要將相應(yīng)的接口以匯總的方法一一實現(xiàn)。事件源利用一定的方法來對監(jiān)聽器的信息進行加載和調(diào)用,在每一個事件源中都具有添加和刪除相應(yīng)監(jiān)聽器的方法和操作。在計算器功能的實現(xiàn)中,主要是操作者利用計算器界面的按鍵模塊,進行相應(yīng)操作的點擊,進而就可以出發(fā)相應(yīng)的事件動作,而這些發(fā)生的動作就會被相應(yīng)的監(jiān)聽器進行接收和處理。在計算器的事件監(jiān)聽器對象的創(chuàng)建中,通過匿名內(nèi)部類的方法來進行創(chuàng)建,進而對發(fā)生的相應(yīng)事件進行分析和處理,同時,在計算器程序的按鈕設(shè)置中,還要對所有的按鈕添加相應(yīng)的動作事件的監(jiān)聽器。由于計算器程序所用到的兩位數(shù)的操作是不確定性的,因此,在兩位數(shù)的設(shè)計中,就需要先設(shè)定一個可變性的字符串來對用戶的輸入數(shù)字進行保存,還需要設(shè)定兩個double類型的變量來進行操作數(shù)的保存,另外,還要設(shè)定一個字符串來對運算符進行保存,在該部分代碼的使用中,需要涉及到整個程序,因此,對這4個變量都設(shè)定為靜態(tài)成員變量的形式[3]。
3.2 功能使用與分析
在進行計算器代碼的設(shè)定后,就需要對計算器的程序功能進行使用和分析,進而來檢查程序功能的正確性,在調(diào)試的過程中,需要對所有的功能進行試運行分析,比如,可以輸入一些簡單的數(shù)字信息來檢查各個按鈕和功能的準確性,在這些數(shù)據(jù)的輸入中,為了保證數(shù)據(jù)具有科學的參考性,就需要對不同范圍的數(shù)據(jù)進行檢驗輸入,從而避免出現(xiàn)一定的數(shù)據(jù)使用范圍過小的情況,造成計算器的使用障礙。
4 結(jié)語
計算器的設(shè)計與實現(xiàn),離不開信息技術(shù)的開發(fā)和使用。在計算器的設(shè)計中,需要綜合運用Java Swing技術(shù),而隨著計算器的使用要求越來越高,需要對Java Swing技術(shù)進行進一步的探索,來實現(xiàn)計算器多功能程序的設(shè)計。
參考文獻
[1] 楊建強,李苗在.基于Java Swing的計算器的設(shè)計與實現(xiàn)[J].電腦與電信,2016(10):61-63.
[2] 任凱.基于JAVA的簡單計算器的設(shè)計與實現(xiàn)[J].電腦知識與技術(shù),2011,7(15):3566-3567.
[3] 吳義滿.基于labview虛擬計算器的設(shè)計與實現(xiàn)[J].數(shù)字技術(shù)與應(yīng)用,2013(1):148-151.endprint