极简版闹钟(java)
package javaBasic;
import java.awt.Toolkit;
import java.awt.event.*;
import java.text.SimpleDateFormat;
import java.util.*;
import javax.swing.JOptionPane;
import javax.swing.Timer;
public class AlarmClock {
public static void main(String[] args) {
System.out.println("请输入间隔的秒数:");
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
class AClock{
private int delay;//表示延迟时间
private boolean flag;//标记是否需要发出提示音
AClock(int delay,boolean flag){
this.delay = delay;
this.flag = flag;
}
public void start() {
class Printer implements ActionListener{//内部类实现动作监听器
public void actionPerformed(ActionEvent e) {
SimpleDateFormat format = new SimpleDateFormat("k:m:s");
String result = format.format(new Date());//获取当前时间
System.out.println("当前时间为"+result);//显示当前时间
if(flag) {
/*getDefaultToolkit()获取默认工具包。
* beep()根据本地系统设置和硬件功能发出音频蜂鸣声。 */
Toolkit.getDefaultToolkit().beep();
}
}
}
new Timer(delay,new Printer()).start();
}
}
AClock al = new AClock(n*1000,true);
al.start();
JOptionPane.showMessageDialog(null, "是否退出");
System.exit(0);
sc.close();
}
}