java 模拟简单打印机功能_java 单例模式模拟打印机打印任务
1.打印机报错处理类
package com.pattern06.singleton.sample03;
public class PrintSpoolerException extends Exception {
public PrintSpoolerException() {
super();
}
public PrintSpoolerException(String message, Throwable cause) {
super(message, cause);
}
public PrintSpoolerException(String message) {
super(message);
}
public PrintSpoolerException(Throwable cause) {
super(cause);
}
}
2.打印机类
package com.pattern06.singleton.sample03;
public class PrintSpoolerSingleton {
private static PrintSpoolerSingleton instance = null;
private PrintSpoolerSingleton() {
}
public static PrintSpoolerSingleton getInstance() throws PrintSpoolerException {
if(instance == null) {
System.out.println("创建打印池......");
instance = new PrintSpoolerSingleton();
} else {
throw new PrintSpoolerException("打印出正在工作中......");
}
return instance;
}
public static void stop() {
instance = null;
}
public void manageJobs() {
System.out.println("管理打印池任务!");
}
}
3.测试类
package com.pattern06.singleton.sample03;
public class Client {
public static void main(String[] args) throws PrintSpoolerException {
PrintSpoolerSingleton p1,p2,p3;
//创建打印池
p1 = PrintSpoolerSingleton.getInstance();
//使用打印池
p1.manageJobs();
//停止打印池
PrintSpoolerSingleton.stop();
p2 = PrintSpoolerSingleton.getInstance();
p2.manageJobs();
//没有把打印池停止就直接获取打印池会报错
p3 =PrintSpoolerSingleton.getInstance();
}
}
java 模拟简单打印机功能_java 单例模式模拟打印机打印任务相关推荐
- java 抽奖 界面显示,Java实现简单抽奖功能界面
本文实例为大家分享了Java实现简单抽奖功能的具体代码,供大家参考,具体内容如下 要求:定义文本框添加姓名,将姓名存储并且在界面中可见,点击抽奖按钮进行抽奖并输出最后的中奖得主. 关于抽奖当然需要用到 ...
- java 模拟简单打印机功能_java之玩转打印机
说在前面 很喜欢并发,所以一直在学并发.这就是因为爱,所以爱了吧!对了,上次说到去南天的事情,我过了,还算对得起自己吧,毕竟连hr都当面夸我优秀,哈哈! demo一之采用Lock锁仿一个打印机随机打印 ...
- java 基础包的功能_Java 8的功能基础
java 基础包的功能 Java 8彻底改变了Java. 它很可能是过去10年中最重要的Java版本. 有很多新功能,包括默认方法,方法和构造函数引用以及lambda, 仅举几例 . 更有趣的功能之一 ...
- java 1.8新增功能_Java 8的新增功能(第二部分-可能会出现什么)
java 1.8新增功能 免责声明:我不为Oracle工作,也不以任何方式代表Oracle. 此功能列表不是官方的. 作为"局外人",这只是我研究的一部分. 这是由三部分组成的系列 ...
- java上传文件功能_Java MemoryMapped文件的功能
java上传文件功能 Java MemoryMapped文件的功能 在JDK 1.4中,内存映射文件的一个有趣功能被添加到Java中,该功能允许将任何文件映射到OS内存以进行有效读取. 内存映射文件可 ...
- java 文档比较功能_Java 12 新特性介绍,快来补一补
Java 12 早在 2019 年 3 月 19 日发布,它不是一个长久支持(LTS)版本.在这之前我们已经介绍过其他版本的新特性,如果需要可以点击下面的链接进行阅读. Switch 表达式 (JEP ...
- java脱机是什么意思_java获取本地打印机,以及判断打印机是否脱机状态
java获取本地打印机,以及判断打印机是否脱机状态 java获取本地打印机,以及判断打印机是否脱机状态 文章中所有返回的类型,是自定义RestFul接口返回类型,你们也可以直接返回数组 如果要看res ...
- java如何调用微信功能_Java编程调用微信分享功能示例
本文实例讲述了java编程调用微信分享功能.分享给大家供大家参考,具体如下: 这篇文章介绍如何使用java开发微信分享功能,因为工作,已经开发完成,可使用. 如果想要自定义微信的分享功能,首先在自己的 ...
- java实现qq空间模块_Java实现模拟QQ空间图片上传
Java实现模拟QQ空间图片上传 首先看效果: 首先编写我们的上传jsp代码,如下: pageEncoding="UTF-8"%> html PUBLIC "-// ...
最新文章
- axure7.0元件库 安卓_AxureRP 7.0 元件库下载
- get php 怎么用,php getdate函数怎么用
- Oracle数据库mybatis 插入空值时报错(with JdbcType OTHER)
- 2018 蓝桥杯省赛 A 组模拟赛(一)数列求值+推导
- java 属性默认_【急】求教如何设置javabean中某几个属性的默认值
- python绘制音频频谱_Python 读取wav画频谱
- cdoj31-饭卡(card) (01背包)
- python基础语法学习常见小问题
- JS版日期格式化和解析工具类
- koa2 从入门到进阶之路 (七)
- VS2017下载 vs2017社区版
- EasiCSDeep:利用表面肌电信号识别颈椎病的深度学习模型
- 域名备案方法及是否需要备案
- 梯度消失和梯度爆炸原因推导
- 长方形的周长公式的c语言,长方形周长公式
- 2015年9月最新浏览器市场份额统计表
- MRT退休后的HEG(HDF-EOS To GeoTIFF Conversion Tool )工具安装
- 深度学习学习率对模型训练的影响
- 激活硬盘被关闭的DMA模式
- 微信小程序使用video播放视频失败
热门文章
- nginx tomcat集群
- c++语言表白超炫图形_C/C++编程笔记:浪漫流星雨表白装b程序
- 华为防火墙图形登录配置
- Windwos server 2019域控制器策略部分
- 使用nssm将命令行启动的应用程序(.exe,.bat等)注册成windows后台服务
- 电子货架标签----云架构
- PHP 开发基础知识笔记
- Centos7:Docker安装Gitlab
- oracle导出报表是网页版,ORACLE AWR报告详解网页在线版
- 手头有65万存款,想在广州买房,买南沙好还是黄埔好?