2015-06-08 27 views
1

所以我正在学习如何使用音频剪辑,到目前为止,我的程序应该会在点击按钮之后播放声音,但在播放之前,我会在我的AudioClip上获得nullpointexception。AudioClip NullPointerException

public class soundtest extends JFrame implements ActionListener { 

    URL url = this.getClass().getResource("/Sounds/gameover.wav"); 
    AudioClip clip = Applet.newAudioClip(url); 
    JButton button = new JButton("Play"); 

    public soundtest() { 
     super("Swing Window"); 
     setSize(500, 200); 
     setDefaultCloseOperation(EXIT_ON_CLOSE); 
     setResizable(false); 
     button.addActionListener(this); 
     add(button); 
     setVisible(true); 
    } 

    public static void main(String[] args) { 
     new soundtest(); 
    } 

    public void actionPerformed(ActionEvent event) { 
     if (event.getSource() == button) { 
      clip.play(); 
     } 
    } 
} 

我甚至试过其他人的代码,我仍然得到一个错误。
我的音频文件肯定是在正确的位置...

回答

0

的Java被扔NullPointerException因为clipnull引用(不引用一个对象)。您提供的代码看起来有点不合适,因为它缺少将实例化对象的关键字new

您是否尝试过这个?:

Here's the documentation你或许应该看看。

+0

当我使用AudioClip plonkSound =新AudioClip(“http://somehost/path/plonk.aiff”) 它说我不能实例化类型AudioClip – howdoidothispls