public void playClick(String file)
{
try {
Clip clip = AudioSystem.getClip();
AudioInputStream ais = AudioSystem.getAudioInputStream (new File(file));
clip.open (ais);
clip.start();
}
catch (Exception e)
{
System.out.println(e);
}
}
Я видел вопрос, похожий на этот, но, я думаю, я буду более конкретным.Зачем нужно закрывать аудиоклип?
Таким образом, приведенный выше код - это метод, который я помещаю в отдельный класс, который вызывается, когда пользователь нажимает кнопку. Кажется, что он отлично работает без .close(), но я все еще уверен, что есть какая-то хорошая причина, почему я должен использовать close(), хотя файл, который я играю, очень мал?
Звук, воспроизводимый только в формате .wav, который является очень коротким звуковым сигналом, очень небольшого размера. Также, если в коде выше есть некоторые недостатки, которые вы могли бы указать, пожалуйста, сделайте это.
Если это будет полностью дублированный вопрос, я извинюсь, и я надеюсь, что вы можете предоставить ссылку на него.
Это просто правильный способ закрыть дескрипторы файлов, если они больше не нужны. – icbytes
Возможный дубликат [Закрытие потоков в Java] (http://stackoverflow.com/questions/515975/closing-streams-in-java) – RossC