用java自己实现一个监视器

本文介绍了如何用Java实现一个简单的监视器,通过事件监听器机制,在文件下载完成后触发通知。通过定义IListener接口、DownLoadListener监听器、DownLoadEvent事件类以及DownLoadFile事件发生类,模拟了下载完成后自动通知的过程。
摘要由CSDN通过智能技术生成

        监视器其实就是当某个事件完成后,自动监控到该情况然后去执行你想要的操作。

        举个例子吧,我们在浏览器里在下载东西,然后你点击了后台下载,当下载结束后,浏览器会弹窗告诉你下载完成了,我们就写段简单的代码来抽象的实现这个小需求。

        首先写一个IListener接口,IListener.java:

package listenertest3;

public interface IListener {
	
	public void afterDownLoad(DownLoadEvent event);

}

        然后是实现了IListener接口的DownLoadListener.java:

package listenertest3;

public class DownLoadListener implements IListener {

	@Override
	public void afterDownLoad(DownLoadEvent event) {
		System.out.println(event.getFileName() + " download finished");
	}
}

        写一个下载事件类DownLoadEvent.java,里边有文件名称以及是否下载完成两个属性:

package listenertest3;

public class DownLoadEvent {
	
	private String fileName;
	private boolean isFinish = false;
	
	public DownLoadEvent(Strin
要通过Java实现打开多少个监视器,需要先了解监视器的概念和Java中的相关API。 监视器通常是指计算机显示屏幕,每个监视器都有一个独立的显示区域。Java中可以通过调用`GraphicsEnvironment`类的`getScreenDevices()`方法获取所有可用的屏幕设备,然后再通过`GraphicsDevice`类的`getDisplayModes()`方法获取每个屏幕设备支持的显示模式。 具体的实现方法如下: 1. 导入`java.awt.GraphicsEnvironment`和`java.awt.GraphicsDevice`类。 2. 使用`GraphicsEnvironment.getLocalGraphicsEnvironment()`方法获取当前本地环境的`GraphicsEnvironment`对象。 3. 使用`getScreenDevices()`方法获取所有可用的屏幕设备,并将结果存储在`GraphicsDevice[]`数组中。 4. 遍历`GraphicsDevice`数组,对于每个屏幕设备,使用`getDisplayModes()`方法获取支持的显示模式,并将结果存储在`DisplayMode[]`数组中。 5. 统计`DisplayMode[]`数组的长度,即为监视器的数量。 下面是一个示例代码: ```java import java.awt.GraphicsDevice; import java.awt.GraphicsEnvironment; import java.awt.DisplayMode; public class MonitorCount { public static void main(String[] args) { // 获取本地环境的GraphicsEnvironment对象 GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment(); // 获取所有可用的屏幕设备 GraphicsDevice[] gd = ge.getScreenDevices(); int monitorCount = 0; // 遍历屏幕设备 for (GraphicsDevice device : gd) { // 获取每个设备支持的显示模式 DisplayMode[] modes = device.getDisplayModes(); // 统计显示模式的数量,即为监视器的数量 monitorCount += modes.length; } System.out.println("监视器数量:" + monitorCount); } } ``` 以上代码可以实现获取当前系统中所有监视器的数量,并输出结果。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值