JBuilder制作音频播放程序,需要注意的是,当播放时,界面上的各个按钮应当仍然可以对用户的操作进行事件响应,所以至少需要两个线程:一个控制歌曲的播放,另外一个对用户事件进行响应。因此我们的AudioPlay类需要实现Runable接口,以使用多线程技术。根据JDK的解释-JDK1.4.0,任何需要由线程执行的实例都应当实现Runable接口,而且由于我们只需要重写run()方法和stop()方法,并给start()方法多态化,所以我们选择实现Runable接口,这样就可以不需要继承Thread类而使用Thread类的实例来运行了。