如何在java 写的Applacation 游戏中实现背景音乐

来源:百度知道 编辑:UC知道 时间:2024/05/10 05:23:54
如何在java 写的Applacation 游戏中实现背景音乐

如何在Java应用程序中播放声音文件
简介
现有的在 Java applet 中对声音播放的支持使得声音播放任务变得很简单,但是在应用程序中缺少这样的支持。此篇小技巧将告诉你如何在 Java 应用程序中播放声音文件。(650 字)
在 Java 应用程序中播放声音文件在现有发行的 Java 版本中都没有正式的支持,但别担心,我们还是有办法的。此篇小技巧将告诉你怎么做--我们从 applet 中播放声音文件所需的基本步骤开始讲述,然后慢慢转到讲述 Java 应用程序中的支持。
在 applet 中播放声音文件非常简单,一般需要以下步骤:

创建一个 AudioClip 对象
装入 .au 声音文件到 AudioClip 对象
一次播放或者不停循环播放声音
停止播放
下面是相应的代码:

import java.applet.*;

AudioClip ac = getAudioClip(getCodeBase(), soundFile);
ac.play(); //play once
ac.stop(); //stop playing
ac.loop(); //play continuously

看起来,在 Java 应用程序中用相同的代码来播放声音文件似乎也是可行的。但很不幸,如果你真这样做,编译器就会报错。为什么呢?因为 AudioClip 对象及其方法 getAudioClip() 属于java.applet 包 -- 而不属于应用程序包的。可喜的是我们还可以自己做些改变来实现声音播放功能。

解决这个问题的窍门是利用由 Sun 及 其JDK 提供的某些 undocumented 的特征。先看看 Sun JDK 中的文件 classes.zip (使用任何解压工具即可),发现其中不仅包含标准的 Java 包如 java.applet 而且还存在包 sun.audio. (在 sun/audio 的目录下.)

包 sun.audio