基于Java的D相冊(cè)制作_第1頁(yè)
基于Java的D相冊(cè)制作_第2頁(yè)
基于Java的D相冊(cè)制作_第3頁(yè)
基于Java的D相冊(cè)制作_第4頁(yè)
基于Java的D相冊(cè)制作_第5頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余1頁(yè)可下載查看

下載本文檔

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

文檔簡(jiǎn)介

1、 基于Java的3D相冊(cè)制作聶帥(指導(dǎo)教師:雷改惠)(湖北師范大學(xué)機(jī)電與控制工程學(xué)院,中國(guó) 黃石 435002)摘 要:本文主要研究了如何制作3D相冊(cè),因?yàn)樵赑C端配置好開發(fā)環(huán)境是項(xiàng)目進(jìn)行的前提條件,所以在此應(yīng)先分析Java軟件的特點(diǎn)及它的配置環(huán)境,通過它的版本信息和它具有的性能,以此更好的了解到如何去編寫和調(diào)試Java語(yǔ)言。另外本文還重點(diǎn)介紹了Eclipse軟件,它是一款強(qiáng)大的Java編程軟件,同時(shí)也是在此次項(xiàng)目中編寫Java語(yǔ)言的重要平臺(tái)。通過啟動(dòng)編程語(yǔ)言,輸出可以展示3D效果的網(wǎng)址,利用這個(gè)網(wǎng)址能夠在電腦網(wǎng)頁(yè)或是手機(jī)網(wǎng)頁(yè)中體會(huì)到3D相冊(cè)的魅力。關(guān)鍵字:開發(fā)環(huán)境;編程語(yǔ)言;3D相冊(cè)中圖分類

2、號(hào):TP311.13D album making based on Java Nie Shuai(tutor: Lei Gaihui)(College of Mechatronics and Control Engineering, Hubei Normal University, Huangshi, China, 435002)Abstract : This paper mainly studies how to make 3D albums, because configuring the development environment on the PC side is a prereq

3、uisite for the project, you should first analyze the characteristics of the Java software and its configuration environment, and learn more about how to write and debug the Java language through its version information and its performance. In addition, this article focuses on the Eclipse software, w

4、hich is a powerful Java programming software, but also in this project to write the Java language important platform. By starting the programming language, output can display the 3D effect of the Web site, using this site can be in the computer Web page or mobile Web page to experience the charm of

5、3D albums. Key words: Development Environment;programming language;3D album 基于Java的3D相冊(cè)制作聶帥(指導(dǎo)教師:雷改惠 講師)(湖北師范大學(xué)機(jī)電與控制工程學(xué)院 中國(guó) 黃石 435002)1引言21世紀(jì)的現(xiàn)在,社會(huì)不斷在進(jìn)步,科學(xué)技術(shù)也在飛速的發(fā)展中,人們的生活變得更加的多姿多彩。就如今的社會(huì)而言,怎么使生活方式變得更加便捷和高效已經(jīng)成為了人們主要思考的問題。最開始人們觀看照片只能通過翻閱相冊(cè),并且觀看效果比較單一,觀看的方式也比較有限。后來(lái)經(jīng)過技術(shù)人員的不斷探索,3D技術(shù)被應(yīng)用到各個(gè)領(lǐng)域當(dāng)中。被賦予了3D效果的相

6、冊(cè)開始被越來(lái)越多的人們所熱愛,它隨時(shí)地就可以觀看,且滑動(dòng)的效果比較流暢快速,可以很便捷的就看到多張照片,還可以根據(jù)自己的喜好去更改照片,并對(duì)它進(jìn)行放大和縮小的動(dòng)態(tài)效果展示。本次畢業(yè)論文主要通過Java語(yǔ)言去制作3D相冊(cè),模擬3D動(dòng)態(tài)效果。2 選題背景2.1 選題的必要性JAVA語(yǔ)言自美國(guó)SUN公司1995年年初在互聯(lián)網(wǎng)上發(fā)布,并且免費(fèi)開源給所有人,使大家都有機(jī)會(huì)接觸到Java編程語(yǔ)言。直至今日,Java編程語(yǔ)言仍然吸引了大量的程序員來(lái)使用,他們運(yùn)用Java語(yǔ)言來(lái)開發(fā)各種小程序,甚至有些復(fù)雜的小游戲。而在電氣工程領(lǐng)域高速發(fā)展的今天,諸多方面越來(lái)越重視軟硬件的結(jié)合。同時(shí)人們的娛樂生活也越來(lái)越豐富,

7、對(duì)于相冊(cè)的可玩性要求也越來(lái)越高。故本論文采用Java編程語(yǔ)言在線制作一款簡(jiǎn)易的3D相冊(cè),讓平日的生活更加豐富多彩。2.2 國(guó)內(nèi)外發(fā)展情況Java編程語(yǔ)言是上世紀(jì)末在美國(guó)開始發(fā)展直至今日。那時(shí)歐美國(guó)家各方面發(fā)展迅猛,并因此空前的發(fā)展了現(xiàn)代科技,而Java作為一款先進(jìn)的、具有未來(lái)科技象征的高級(jí)機(jī)器語(yǔ)言也得到了快速發(fā)展。所以這么多年過去了,國(guó)外的發(fā)展依舊迅猛。而國(guó)內(nèi)雖然才在近十幾年得到大力發(fā)展,但我國(guó)的Java語(yǔ)言相關(guān)的科研項(xiàng)目均達(dá)到了世界領(lǐng)先水平。中國(guó)的Java語(yǔ)言以作為大學(xué)相關(guān)專業(yè)課程的必修課,在往后Java肯定會(huì)得到更迅猛的發(fā)展。2.3 面向?qū)ο笳Z(yǔ)言Java語(yǔ)言的簡(jiǎn)介Java語(yǔ)言是從1995

8、年的7、8月份開始在新興計(jì)算機(jī)業(yè)界受到了空前的注意,特別是在互聯(lián)網(wǎng)(Internet) 和多媒體(Multimedia)相關(guān)設(shè)備方面。Java語(yǔ)言為什么有這樣的魅力呢? 有一些人作出了如此類的比喻: Java 在全球資訊網(wǎng)的地位就和電子表格與個(gè)人計(jì)算機(jī)TTP和FTP 等TCP/ IP通訊協(xié)定的地位相一致。Java 應(yīng)用程序可以在網(wǎng)絡(luò)上開啟及聯(lián)結(jié)很多種使用物件,就好像通過URL.S 聯(lián)結(jié)使用一個(gè)本地的文件系統(tǒng)那個(gè)樣子。 根據(jù)Java語(yǔ)言編寫出的源程序能夠在很多種情況中成功的執(zhí)行而且還能具備其自身的穩(wěn)定性。下面是java語(yǔ)言的特點(diǎn):其高效能性: Java 位元碼能被夠快速地轉(zhuǎn)換成機(jī)器碼,自位元碼轉(zhuǎn)

9、換成機(jī)器碼的能效大致與C和C+語(yǔ)言沒有區(qū)別。其解釋性: Java 解釋器能夠直接地在任何一個(gè)設(shè)備上執(zhí)行Java 位元碼,故在進(jìn)行程序聯(lián)結(jié)的時(shí)候,時(shí)間的節(jié)約,這對(duì)程序的開發(fā)過程,有非常大的幫助。其安全性: Java 是被開發(fā)用在網(wǎng)絡(luò)和分布式的環(huán)境中的,安全性當(dāng)然就成為了一個(gè)值得去考慮的問題。Java語(yǔ)言具備很多個(gè)階層的互鎖(Interlocking)保護(hù)方法,能夠有效地預(yù)防病毒的入侵及損壞行為的產(chǎn)生,可以使系統(tǒng)處于一種安全的狀態(tài)。其動(dòng)態(tài)性: Java語(yǔ)言比C或C+更具備動(dòng)態(tài)性,能更適應(yīng)不斷在變化的環(huán)境,Java不會(huì)因?yàn)槌绦驇?kù)的刷新,而必須重新編譯程序。其可移植性: 初始資料型式的大小是被設(shè)定好的

10、,比如"float"向來(lái)是表示一個(gè)32位元IEEE754浮點(diǎn)運(yùn)算的數(shù)字,因?yàn)榻^大部分的CPU 都具備此相同的特性。程序庫(kù)是屬于系統(tǒng)的一部份的,它定義了一些可以移植的程序接口,Java語(yǔ)言自身具有良好的可移植性。其多線程的: Java具備多線程的功能,這對(duì)交互回應(yīng)能力以及即時(shí)執(zhí)行行為是有很多幫助的。其結(jié)構(gòu)中立性: 一般來(lái)說,網(wǎng)絡(luò)是根據(jù)許多機(jī)型不一樣的設(shè)備組合而成,但是又因CPU 和各個(gè)系統(tǒng)體系結(jié)構(gòu)都不大相同。所以,該怎么讓每一個(gè)應(yīng)用程序能夠在每種設(shè)備上順利執(zhí)行,成為了難題。據(jù)此,Java語(yǔ)言的編譯器會(huì)生成結(jié)構(gòu)中立的目標(biāo)文件格式, 這可以使得編譯碼在許多種處理器中順利執(zhí)行。&q

11、uot;Java語(yǔ)言學(xué)習(xí)及使用起來(lái)很簡(jiǎn)單,和CC+及其它種類程序語(yǔ)言不一樣”Java語(yǔ)言是一種編程語(yǔ)言。Java語(yǔ)言容易學(xué)習(xí)嗎?它或許是和C或C+比起來(lái)容易去接受,但它仍然只是一種編程語(yǔ)言,不是描述語(yǔ)言。"Java碼具有可移植性,但C及C+沒有“Java原代碼比C 語(yǔ)言的可移植性強(qiáng),其原因在Java的目標(biāo)碼上。Java碼在一種設(shè)備上進(jìn)行編譯,而能夠在全部的設(shè)備上執(zhí)行,只要那臺(tái)設(shè)備上含有Java解釋器。"Java被拓展時(shí)能在設(shè)備上執(zhí)行任何一個(gè)事情”理論上來(lái)說,Java Applet(Java小應(yīng)用程序)能夠做任何一個(gè)事情,例如模擬3D VRBIL模型、播放電影等等。但實(shí)際上,

12、一個(gè)小應(yīng)用程序(Applet) 被執(zhí)行僅僅只能在那一頁(yè)上面進(jìn)行,而不能在那頁(yè)之外被執(zhí)行。與此同時(shí),Java也被受限于程序庫(kù)的功能當(dāng)中。"Java語(yǔ)言建立大型的應(yīng)用程序合適嗎”如果Java適合建立大型程序的話,Java就不適合于應(yīng)用在Web瀏覽器中了。第一個(gè)具有商業(yè)性的Java Applets并不是完全使用了Java,它只使用了Java語(yǔ)言來(lái)作為用戶的接口,而處理了所有的工作的,是CCT碼。"Java語(yǔ)言是用來(lái)解釋執(zhí)行的,Basic也是用來(lái)解釋執(zhí)行的。它倆是一個(gè)概念,所以可以說Java=Basic"雖然Java語(yǔ)言確實(shí)是使用解釋器的,但實(shí)際上,Java語(yǔ)言則和C或C

13、+等完全編譯語(yǔ)言更為相近,但與Basic或APL等完全編譯語(yǔ)言不大相近。"Java語(yǔ)言刪掉了CGI命令稿(Scripts) 和程序的要求”Java Applets將會(huì)替代一部分CGI的用途。在一些情況下,Java Applets能夠替代一部分服務(wù)器端代碼(Server-Side Code),但是在大部分的情況下,出于安全性理由和能效的考慮,Java語(yǔ)言仍然沒辦法完全替代CGT Scripts。"Netscape' s JavaScript 是和Java 有相關(guān)性的”除了名字以外,Java和JavaScript是有一小部分相關(guān)性的。JavaScript語(yǔ)言是一種命令稿

14、型語(yǔ)言,能夠使用在HTML頁(yè)中。Java碼并沒有在HTML頁(yè)中出現(xiàn),而是在HTML頁(yè)中經(jīng)過一個(gè)鏈結(jié)來(lái)鏈結(jié)編譯譯碼組。Java語(yǔ)言和JavaScrip語(yǔ)言之間的關(guān)系與C語(yǔ)言和C Shell語(yǔ)言相同。2.4 JDK工具的介紹JDK工具是Java語(yǔ)言的核心部分,它包含Java的運(yùn)行環(huán)境(Java Runtime Envirnment)、一些Java工具以及Java基礎(chǔ)的類庫(kù)。不論是什么類型的Java應(yīng)用服務(wù)器,它們實(shí)際上都含有某個(gè)版本的JDK。所以學(xué)好Java語(yǔ)言的第一步就是能夠掌握J(rèn)DK工具。目前,Sun公司發(fā)布的JDK工具是現(xiàn)在最流行的,除了Sun公司發(fā)布的之外,還有許多組織以及公司都研發(fā)了屬于

15、自己公司的JDK版本,比如IBM 公司研發(fā)的JDK,BEA 公司研發(fā)的Jrocket,以及GNU組織研發(fā)的JDK等等,都有著自己公司和組織的特色。其中IBM公司的JDK工具中包含的JVM文件的運(yùn)行效率比Sun公司研發(fā)JDK版本包含的JVM文件要高得多。與此同時(shí),只運(yùn)行在X86平臺(tái)的Jrocket文件在服務(wù)端運(yùn)行效率也比Sun 公司的JDK好上許多。但是不管怎么比較,我們也還是應(yīng)該先把Sun公司研發(fā)的JDK工具學(xué)好。通過在JDK工具中寫入Java語(yǔ)言可以研發(fā)出applet和應(yīng)用程序的程序開發(fā)環(huán)境。它由處于操作系統(tǒng)層之上的運(yùn)行環(huán)境及開發(fā)者編譯、調(diào)試及運(yùn)行的Java 語(yǔ)言寫的applet 和應(yīng)用程序

16、所需要的工具組合而成。JDK是一種Sun Wi ro5ystens 面向Java開發(fā)員的產(chǎn)品。(從Java面世以來(lái),JDK工具已經(jīng)成為使用最廣泛的java編輯軟件)。JDK中含有的基本器件如下:nnjar 一種打包工具,它的作用是將有關(guān)的類文件組合到一個(gè)文件夾中。nnjdb debugger,它是一個(gè)查錯(cuò)工具。nnjavac 一種編譯器,它的功能是將源程序轉(zhuǎn)變成字節(jié)碼。nnjavadoc 一種文檔生成器,它的作用是自源代碼的注釋中收集文檔。2.5 Eclipse工具的簡(jiǎn)介及特性Eclipse是一個(gè)可擴(kuò)展的開發(fā)平臺(tái),它是基于Java、開放源代碼的平臺(tái)。就其自身來(lái)說,它只能看做一個(gè)框架或說一組服務(wù)

17、,用在經(jīng)過插件組件構(gòu)建的開發(fā)環(huán)境。非常幸運(yùn)的是,Eclipse軟件自帶一個(gè)標(biāo)準(zhǔn)的插件集,包含Java開發(fā)工具。即使很大一部分的用戶樂于將Eclipse軟件當(dāng)成是 Java 的集成開發(fā)環(huán)境來(lái)利用,但是Eclipse 工具的目標(biāo)卻不僅是如此。Eclipse 還包含插件開發(fā)環(huán)境,這個(gè)組件重點(diǎn)面向期望擴(kuò)展 Eclipse的軟件技術(shù)員,因?yàn)樗梢宰屵@些技術(shù)人員無(wú)縫集成出Eclipse軟件環(huán)境相匹配的工具。因?yàn)镋clipse軟件中的每個(gè)部分都是插件,所以對(duì)給 Eclipse供應(yīng)插件,及給用戶供應(yīng)一致和統(tǒng)一的集成開發(fā)環(huán)境來(lái)說,全部的工具開發(fā)人員都具備同樣的展示場(chǎng)地。3 設(shè)計(jì)方案 3.1 方案思路因?yàn)樗鶎W(xué)知識(shí)

18、有限,并且通過向同學(xué)的請(qǐng)教也實(shí)在無(wú)法模擬出安卓系統(tǒng)控制屏的圖像開發(fā)環(huán)境,所以現(xiàn)在用網(wǎng)頁(yè)語(yǔ)言來(lái)代替安卓系統(tǒng)的開發(fā)環(huán)境,在網(wǎng)頁(yè)中來(lái)顯示圖像和操作圖像。我將通過用java語(yǔ)言來(lái)制作出3D相冊(cè)來(lái)實(shí)現(xiàn)顯示這一功能。具體操作過程如下:編寫好java語(yǔ)言作為3D相冊(cè)的開發(fā)語(yǔ)言,用eclipse(java編輯軟件)打開,然后執(zhí)行DemoConfig中的main方法,最后用網(wǎng)頁(yè)訪問:http:/localhost:8888/,就可以成功的在電腦或者手機(jī)上面顯示3D相冊(cè)的照片了,根據(jù)自己的喜好可以通過復(fù)制和刪除功能來(lái)修改顯示的照片。我們需要注意的是:手機(jī)和電腦訪問的網(wǎng)址稍有不同,手機(jī)訪問網(wǎng)絡(luò)的地址和WiFi的地址

19、有關(guān),由于網(wǎng)絡(luò)的地址是動(dòng)態(tài)的,我們需要隨時(shí)查看網(wǎng)絡(luò)地址來(lái)相應(yīng)地更新訪問的網(wǎng)絡(luò)地址。3.2 JDK1.8環(huán)境配置及特性3.2.1 JDK1.8的環(huán)境配置 進(jìn)行Java或者Android開發(fā),首先必須要搭建一個(gè)開發(fā)環(huán)境,先安裝JDK,然后配置jdk環(huán)境變量。下面是jdk的環(huán)境配置過程(安裝過程并不難,只要按照提示往下一步一步進(jìn)行操作就行了,可以根據(jù)自己的意愿適當(dāng)?shù)恼{(diào)整文件的保存路徑):在計(jì)算機(jī)的高級(jí)系統(tǒng)設(shè)置中選擇環(huán)境變量,在系統(tǒng)變量中新建:變量名:JAVA_HOME變量值:C:Program FilesJavajdk1.8.0_172 JAVA_HOME是用來(lái)表示jdk的安裝目錄。配置java_h

20、ome的原因是:(1)方便引用。(2)其他軟件會(huì)引用約定好的JAVA_HOME變量。比如tomcat就需要引用JAVA_HOME。在系統(tǒng)變量中查找 Path 編輯:變量名:Path變量值:C:Program FilesJavajdk1.8.0_172bin;C:Program FilesJavajre8bin; (ps:原來(lái)Path的變量值末尾如果沒有;號(hào),先輸入;號(hào)再輸入上面的代碼)Path配置好后能夠讓我們?cè)谙到y(tǒng)中的任何地方運(yùn)行java應(yīng)用程序。比如:javac、java命令。在系統(tǒng)變量中新建:變量名:CLASSPATH變量值:.;%JAVA_HOME%lib;%JAVA_HOME%lib

21、tools.jar;(ps:前面有個(gè) .; 這個(gè)是告訴JDK,搜索CLASS時(shí)先查找當(dāng)前目錄的CLASS文件 )配置java_home的原因是:我們寫java程序時(shí)需要引用已經(jīng)開發(fā)好的類,所以應(yīng)該讓java解釋器知道引用的類的位置啊。否則會(huì)提示:所引用的類找不到的。檢查是否配置成功:電腦重啟后,win+R 輸入cmd 進(jìn)入命令提示符界面。1)輸入java -version (ps:java空格-version),查看當(dāng)前jdk的版本,顯示版本信息 則說明安裝和配置成功。結(jié)果如下圖3.1所示: 圖3.1 java -version配置信息2)輸入java 查看命令:結(jié)果如下圖3.2所示: 圖3.

22、2 java配置信息 3.2.2 JDK1.8版本的特點(diǎn)JDK1.8的版本有以下十個(gè)特點(diǎn):(1) 時(shí)間日期Date APIJava 8的版本在包java.time下包括了一組全新的API(時(shí)間日期)。雖然新的日期API和開源的Joda-Time庫(kù)相差不多,但又不能是說完全一致的。(2)接口的初始默認(rèn)方法:Java 8能夠讓我們給接口增加一個(gè)不屬于抽象的方法去實(shí)現(xiàn),只要利用 default關(guān)鍵字就可以了,這種方法又可以稱為擴(kuò)展方法。Formula接口在具備calculate方法時(shí)同時(shí)還定義了sqrt方法,使Formula接口的子類只用實(shí)現(xiàn)一個(gè)calculate方法成為可能,初始默認(rèn)方法sqrt將

23、可以直接使用在子類上。(3)默認(rèn)訪問接口的方法Formula接口定義了一個(gè)初始默認(rèn)方法sqrt能夠直接被formula的實(shí)例包含匿名對(duì)象訪問到,可是在lambda表達(dá)式中這個(gè)卻是行不通的,它沒有辦法直接訪問到默認(rèn)方法。JDK 1.8 版本的API含有許多內(nèi)建的函數(shù)式類型接口,它提供了許多全新的函數(shù)式類型的接口讓工作變得更加方便,這些接口中有一些是來(lái)源于Google Guava庫(kù)里的。(4)Lambda表達(dá)式老版本中排列字符串的時(shí)候只用提供給靜態(tài)方法 Collections.sort一個(gè)List對(duì)象和一個(gè)比較器來(lái)按規(guī)定的順序排列。一般的操作方法都是先建立一個(gè)匿名比較器對(duì)象然后再將這個(gè)對(duì)象傳給sort方法。在Java 8的版本中我們就不需要利用這樣的傳統(tǒng)匿名對(duì)象方法了,新版本的Java 8提供了更利落可行的語(yǔ)法。(5)局部變量的訪問通過lambda表達(dá)式,我們能夠直接訪問外層的局部變量,可是這其中卻出現(xiàn)了一個(gè)問題就是無(wú)法試圖在lambda表達(dá)式中修改num。(6)函數(shù)式類型的接口一個(gè)lambda表達(dá)式對(duì)應(yīng)了一個(gè)類型,這種類型一般都是接口類型。 “函數(shù)式接口”含義指的是僅僅只包闊了一個(gè)抽象方法的接口,每一種這樣類型的lambda表達(dá)式都會(huì)被配套到這種抽象方法中去。由于初始的默認(rèn)方法不算是抽象方法,因此你也能夠給你的函數(shù)式類型的接口增加默認(rèn)方法。(7)方法與構(gòu)造函數(shù)引用Java 8 允許

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論