514652039毕业设计(论文)基于JAVA的Mp3播放器JMPlayer.doc
《514652039毕业设计(论文)基于JAVA的Mp3播放器JMPlayer.doc》由会员分享,可在线阅读,更多相关《514652039毕业设计(论文)基于JAVA的Mp3播放器JMPlayer.doc(33页珍藏版)》请在三一办公上搜索。
1、基于JAVA的Mp3播放器JMPlayer作 者 姓 名 专 业 计算机科学与技术 指导教师姓名 专业技术职务 讲 师 山东轻工业学院本科毕业设计(论文)原创性声明本人郑重声明:所呈交的毕业论文,是本人在指导教师的指导下独立研究、撰写的成果。论文中引用他人的文献、数据、图件、资料,均已在论文中加以说明,除此之外,本论文不含任何其他个人或集体已经发表或撰写的成果作品。对本文研究做出重要贡献的个人和集体,均已在文中作了明确说明并表示了谢意。本声明的法律结果由本人承担。毕业论文作者签名: 年 月 日山东轻工业学院关于毕业设计(论文)使用授权的说明本毕业论文作者完全了解学校有关保留、使用毕业论文的规定
2、,即:学校有权保留、送交论文的复印件,允许论文被查阅和借阅,学校可以公布设计论文的全部或部分内容,可以采用影印、扫描等复制手段保存本论文。指导教师签名: 毕业设计(论文)作者签名: 年 月 日 年 月 日 目 录摘 要IIIABSTRACTIV 第一章 引言11.1 课题研究背景及意义11.2 音乐播发器的发展及历史11.3 系统开发目标21.4 本文的主要内容和结构2 第二章 相关工具及技术介绍12.1 Eclipse简介32.2 Java Thread简介42.3 JavaSound简介52.4 Java Swing简介62.5 Java Properties简介7 第三章 需求分析93.
3、1 工作流程分析93.2 评价具体需求分析93.3 系统功能结构图93.4 功能详细描述103.4.1 Mp3播放103.4.2 播放控制103.4.3 播放信息控制103.4.4 Mp3列表管理113.4.5 歌词113.4.6 其他11 第四章 总体设计124.1 系统要求124.2 系统功能描述124.3 系统运行环境134.4 系统设计思想134.4.1 总体流程设计134.4.2 Mp3播放设计144.4.3 播放模式设计154.4.4 Mp3文件列表管理设计154.4.5 歌词设计164.4.6 皮肤切换设计174.4.7 显示模式设计18 第五章 详细设计195.1 界面设计19
4、5.2 系统关键类设计205.3 系统类结构22 第六章 软件功能实现236.1 播放Mp3实现236.2 Mp3文件解析实现236.3 Mp3列表控制类实现236.4 Mp3歌词解析及显示控制实现24结束语25参考文献26致 谢27摘 要随着java 语言的出现,软件的跨平台性已经能被更进一步的解决和处理,随着Internet的发展,软件的跨平台性又被提高到另一个新的要求。音乐播放器是一种用于播放各种音乐文件的多媒体播放软件。它涵盖了各种音乐格式的播放工具,比如:MP3播放器,WMA播放器,MP4播放器等。它们不仅界面美观,而且操作简单,带你进入一个完美的音乐空间。本系统是一个简单的Mp3音
5、乐播放器实现,旨在借助于java语言的强大的跨平台特性来实现本播放器的跨平台的通用。但由于设计时间有限目前仅支持mp3和wav格式音乐文件的播放。本系统的主要使用了Java中的多线程编程,系统中的mp3播放、歌词解析及显示、播放时间的显示控制、播放器的主界面等都是单独采用一个独立的线程来进行管理控制的。本系统在结构上的核心设计模式采用了GOF的中介者模式,以此来使各个模块的相互耦合度降到最低,以便更容易的进行各个模块的独立的开发从而使整个系统的灵活性和可扩展性都得到提高。开发时采用TDD。关键词 Java MusicPlayer multi-threadABSTRACTWith the dev
6、elopment of java language, cross-platform natures of the software have been resolved and processed can be further, as the Internets development, cross-platform of software has been raised to another of the new requirements.Music player is a multimedia playback software which can be played variety of
7、 music files. It covers player tools that can be played a variety of music formats, such as, MP3 player, WMA player, MP4 player. It not only has the beautiful interface but also operate simply. It will take you into a perfect music world.This system is a simple Mp3 music player .With the help of jav
8、a language features thats a powerful cross-platform, player is to be achieved this common cross-platform. As the time is limited , the Mp3 Player only can support mp3 and wav music files.The main use of this system is multi-thread in the Java program .In the system the mp3 playing, lyrics analysed a
9、nd displayed, the control of play time, and the players main interface are all used of an individual thread.The structure of the systems core design is using an Mediator Pattern which is called GOF pattern, in order to enable each module to minimize the coupling. In order to more easily carry out th
10、e independently developed of each module .So the system flexibility and scalability can be improved. The project was developed in TDD4.Key WordsJava;MusicPlayer;multi-thread第一章 引言1.1 课题研究背景及意义当今时下, 随着信息技术的不断发展,软件技术的发展也是日新月异,人们对于音乐的享受方式也是不断的发生变化,各种音乐播放软件让人们享受变的更加的舒适,愉快和方便。基于编程语言的不同以及Internet 的发展,现在比较
11、流行的音乐播放的形式有软件播放像千千静定,酷我音乐盒等,在线软件播放像百度的在线音乐盒,以及各大门户网站基本上都提供了在线收听音乐的服务。在线收听的形式可以不依赖于操作系统的软件环境凡是能与Internet连接的计算机都可以进行在线收听。但在收听也有它的局限性,像无法与Internet连接时。这时候本地的音乐播放软件就显示出它的优势来了,但由于操作系统的本身软件环境及生产厂家的限制,使用非可夸平台语言编写的音乐播放软件无法做到在操作系统上的共用,本题目的意义在于使用java这种跨平台的语言,编写一个通用的音乐播放软件。1.2 音乐播发器的发展及历史时下,音乐播放器已经成为人们生活中不可或缺的必
12、备品。它的诞生,让动听的声音有了存储的载体,得以广泛的传播和分享。接下来,笔者就针对它的发展史做个简单的回顾。1877年12月,爱迪生公开表演了留声机,“会说话的机器”诞生的消息,立刻轰动了全世界。外界舆论马上把他誉为科学界之拿破仑,留声机也成为19世纪最引人振奋的三大发明之一。1898年,丹麦的V.波尔森发明了钢丝录音机,从此,以硬磁性材料为载体,利用磁性材料的剩磁特性将声音信号记录在载体,具有重放、录音功能的磁带录音机开始在家庭普及。随着社会的发展和科技的进步,人们对音色品质的追求越来越高。老式录音机音色简单、苍白的特性,使其逐渐被社会淘汰。代表着更清晰、立体声、更浑厚音质的播放器CD正式
13、登上舞台。1982年,世界上第一台CD播放器、同时也是索尼生产的第一台CD播放器诞生了Sonys CDP-101。CD的出现,依靠完美的音质表现、快捷搜歌、方便携带等功能,风靡了播放器市场10多年之久。直到MP3的出现。尽管1995年9月9日发布的第一款实时软件MP3播放器Winplay3,已经让许多人能够在自己的个人电脑上编码和回放MP3文件,音乐播放器的智能时代正式来临,但是由于PC和互联网的发展所限,MP3并没有获得广泛的普及。直到2001年10月,苹果公司推出了第一代IPOD,将MP3播放器演绎到艺术与文化的境界。它不仅容量巨大,操作智能,而且外形时尚,一经推出,即刻获到全球范围内的热
14、捧!苹果公司之所以强大,除了自身强大的研发能力和创新意识以外,善于利用外设厂商资源,也是其成功的重要一环。在苹果的研发基地,来自全球70多家顶尖配件厂商共同参与苹果每一款新品的研发过程。世界顶级音响制造品牌JBL、哈曼卡顿、全球最知名的三大耳机品牌UE、ETY、WESTONE都量身为IPOD打造完美的声音输出设备,让IPOD完美的音质得以淋漓尽致的展现。 1.3 系统开发目标本系统的开发目标为: 开发出一个不受操作系统(此操作系统必须支持JAVASE)限制的mp3音乐播放器。此播放器要实现一般常见播放器的一些通用的功能。要求系统的各个模块之间尽可能的达到高内聚,低耦合,要求系统具有较高的可维护
15、性和可扩展性。1.4 本文的主要内容和结构本论文由五章构成,其中第四、五章为核心部分,讲述了系统的实现。具体的每个章节的主要内容如下:第一章 引言。主要介绍了课题的研究背景及意义以及系统的开发目标以及mp3播放器的发展历史。第二章 相关工具及技术介绍。主要介绍了Java线程、Java多线程编程,java音乐播放的主要APIJavaSound、播放器所使用的界面APISwing、Eclipse开发工具。第三章 需求分析。主要从需求的角度介绍了mp3音乐播放器的功能等。第四章 总体设计。本章为本文的核心部分,主要介绍了mp3播放器的各个设计点的设计思想。第五章 详细设计。本章也是系统的核心章节之一
16、,主要介绍了播放器的界面设计、系统的关键类的设计以及系统的类结构。第五章 软件功能实现。本章主要从代码的角度介绍了整个播放器的设计。第二章 相关工具及技术介绍2.1 Eclipse简介Eclipse是一个非常优秀的集成开发环境。IBM花了多年的时间来开发基于Java的公开源代码的软件Eclipse,这个在IBM支持下的开发源码项目经过一段时期的发展完善,已经为广大Java开发者所熟悉。Eclipse是一个用于构建集成Web和应用程序开发工具的平台,它本身并不会提供大量的最终用户功能,而是通过插件来快速开发集成功能的部件。Eclipse是一款非常优秀的开源IDE,非常适合Java开发,由于支持插
17、件技术,受到了越来越多的开发者的欢迎。最新的Eclipse 3.0不但界面作了很大的增强,而且增加了代码折叠等众多优秀功能,速度也有明显的提升。配合众多令人眼花缭乱的插件,完全可以满足从企业级Java应用到手机终端Java游戏的开发。Eclipse提供了公共用户界面模型来使用工具。Eclipse软件旨在简化用于多操作系统软件工具的开放过程,他被设计成可以在多个操作系统上运行,基于Eclipse的软件在Linux和微软Windows系统上都可以运行,因此可以省去开发者有时要把Windows应用程序切换到Linux的操作,进而简化了整个开发过程。同时Eclipse还提供了于每个底层操作系统强大集成
18、。Eclipse的核心是动态发现插件的体系结构。平台负责处理基本环境的后台工作,并提供标准的用户导航模型,于是每个插件可以专注于执行少量的任务,Eclipse的出现,不仅为Java开发者提供了免费使用强大的Java IDE的机会,而且也为C+的开发者提供了CDT。通过集成大量的插件,Eclipse的功能可以不断扩展,以支持各种不同的应用。Eclipse软件可以用于管理多种开发任务,其中包括测试、性能调整以及程序调试等,而且还可以继承来自多个供货商的第三方应用程序开发工具。此外,Eclipse软件非常适合开发电子商务应用程序,例如IBM公司自己的面向Web服务的WebSpbere应用程序开发工具
19、就是建立在Eclipse基础之上。除此之外,Eclipse平台是一个成熟的、精心设计的、可扩展的体系结构。Eclipse的价值在于他为创建可扩展的集成开发环境提供了一个开放源码平台。这平台允许任何人构建与环境和其他工具无缝集成的工具,而工具与Eclipse无缝集成的关键便是插件。2.2 Java Thread简介 线程是程序运行的基本执行单元。当操作系统(不包括单线程的操作系统,如微软早期的DOS)在执行一个程序时,会在系统中建立一个进程,而在这个进程中,必须至少建立一个线程(这个线程被称为主线程)来作为这个程序运行的入口点。因此,在操作系统中运行的任何程序都至少有一个主线程。进程和线程是现代
20、操作系统中两个必不可少的运行模型。在操作系统中可以有多个进程,这些进程包括系统进程(由操作系统内部建立的进程)和用户进程(由用户程序建立的进程);一个进程中可以有一个或多个线程。进程和进程之间不共享内存,也就是说系统中的进程是在各自独立的内存空间中运行的。而一个进程中的线可以共享系统分派给这个进程的内存空间。线程不仅可以共享进程的内存,而且还拥有一个属于自己的内存空间,这段内存空间也叫做线程栈, 是在建立线程时由系统分配的,主要用来保存线程内部所使用的数据,如线程执行函数中所定义的变量。Java编写程序都运行在在Java虚拟机(JVM)中,在JVM的内部,程序的多任务是通过线程来实现的。每用j
21、ava命令启动一个java 应用程序,就会启动一个JVM进程。在同一个JVM进程中,有且只有一个进程,就是它自己。在这个JVM环境中,所有程序代码的运行都是以线程来运行。一般常见的Java应用程序都是单线程的。比如,用java命令运行一个最简单的HelloWorld的Java应用程序时,就启动了一个 JVM进程,JVM找到程序程序的入口点main(),然后运行main()方法,这样就产生了一个线程,这个线程称之为主线程。当main方法结束后, 主线程运行完成。JVM进程也随即退出 。对于一个进程中的多个线程来说,多个线程共享进程的内存块,当有新的线程产生的时候,操作系统不分配新的内存,而是让新
22、线程共享原有的进程块的内存。因此,线程间的通信很容易,速度也很快。不同的进程因为处于不同的内存块,因此进程之间的通信相对困难。实际上,操作的系统的多进程实现了多任务并发执行,程序的多线程实现了进程的并发执行。多任务、多进程、多线程的前提都是要求操作系统提供多任务、多进程、多线程的支持。在Java程序中,JVM负责线程的调度。线程调度是值按照特定的机制为多个线程分配CPU的使用权。调度的模式有两种:分时调度和抢占式调度。分时调度是所有线程轮流获得CPU使用权,并平均分配每个线程占用CPU的时间;抢占式调度是根据线程的优先级别来获取CPU的使用权。JVM的线程调度模式采用了抢占式模式。所谓的“并发
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 514652039 毕业设计 论文 基于 JAVA Mp3 播放 JMPlayer
链接地址:https://www.31ppt.com/p-2386595.html