您现在的位置是:java学习笔记 >
java学习笔记
java暂停、间隔、等待、延迟几秒执行
本 文 目 录
在Java中,有几种方法可以延迟或定时执行代码:
一、暂停几秒执行
Thread.sleep(long millis)
: 这个方法可以让当前线程暂停指定的时间(以毫秒为单位)。这个方法通常用于让程序暂停一段时间,以便进行一些处理或者避免过快地执行某些操作。例如:
public class Main {
public static void main(String[] args) {
try {
Thread.sleep(5000); // 暂停5秒
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("Five seconds have passed.");
}
}
二、等待几秒执行
Object.wait(long timeout)
: 这个方法可以让当前线程等待指定的时间(以毫秒为单位),直到另一个线程调用同一对象的notify()
或notifyAll()
方法。这个方法通常用于实现线程间的通信。例如:
public class Main {
public static void main(String[] args) {
Object object = new Object();
synchronized (object) {
try {
object.wait(5000); // 等待5秒
} catch (InterruptedException e) {
e.printStackTrace();
}
}
System.out.println("Five seconds have passed.");
}
}
三、间隔几秒执行
TimerTask.schedule(TimerTask task, long delay)
: 这个方法可以在指定的时间后执行一个任务。你可以使用Timer
类创建一个定时器,然后使用schedule()
方法安排任务在指定的时间后执行。例如:
import java.util.Timer;
import java.util.TimerTask;
public class Main {
public static void main(String[] args) {
Timer timer = new Timer();
TimerTask task = new TimerTask() {
@Override
public void run() {
System.out.println("Five seconds have passed.");
}
};
timer.schedule(task, 5000); // 延迟5秒后执行任务
}
}
三、延迟几秒执行
ScheduledExecutorService.schedule(Runnable command, long delay, TimeUnit unit)
: 这个方法可以在指定的时间后执行一个任务。你可以使用Executors.newScheduledThreadPool()
方法创建一个定时器,然后使用schedule()
方法安排任务在指定的时间后执行。例如:
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
public class Main {
public static void main(String[] args) {
ScheduledExecutorService executor = Executors.newScheduledThreadPool();
executor.schedule(() -> System.out.println("Five seconds have passed."), 5000, TimeUnit.MILLISECONDS); // 延迟5秒后执行任务
}
}
- 上一篇
子类只会隐式调用父类的无参构造方法?正确!
子类只会隐式调用父类的无参构造方法,如果父类只定义了有参构造方法而没有定义无参构造方法,那么在编译子类时会出现错误,因为Java编译器在编译子类时会默认调用父类的无参构造方法来初始化父类的实例变量。## 子类是如何隐式的调用父类的无参构造方法的?```javapublic class Parent { public Parent() { System.out.println("
- 下一篇
java:判断当前时间是否位于给定的时间区间范围内
在某些业务逻辑中,不同的时间段可能会有不同的处理方式。比如电商平台的促销活动,可能只在特定的时间段内进行。通过判断当前时间是否在促销时间段内,可以决定是否展示促销信息或应用促销逻辑。那么如何实现判断,当前时间是否在我们给定的时间区间内??## 一、使用`LocalDateTime`类来判断是否位于区间范围内以下是一个示例代码片段的开头,用于判断当前时间是否在给定的时间区间范围内:```javaim