欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

java实现打印机源码组装

程序员文章站 2022-08-17 21:26:20
java基于eclipse实现打印机源码组装大家好,我是小鱼儿.yanxiao,非常荣幸各位来到我的博客。今天又分享一波代码,若是喜欢本篇文章记得三连一波,也欢迎大家发言,废话不多说跑代码。前言文章java代码版本"1.8.0_202"本篇代码采用java面向接口编程提示:以下是本篇文章正文内容,下面案例可供参考PrinterTest.java:package chaper11.printdemo.iface;/**程序测试起步类*/public class PrinterTest {...

java基于eclipse实现打印机源码组装

大家好,我是小鱼儿.yanxiao,非常荣幸各位来到我的博客。今天又分享一波代码,若是喜欢本篇文章记得三连一波,也欢迎大家发言,废话不多说跑代码。

前言

文章java代码版本"1.8.0_202"
本篇代码采用java面向接口编程


提示:以下是本篇文章正文内容,下面案例可供参考

PrinterTest.java:

package chaper11.printdemo.iface;
/**程序测试起步类*/
public class PrinterTest {
	public static void main(String[] args) {
		Printer printer = new Printer();
		//为打印机安装纸张和墨盒
		printer.setInkbox(new ColorInkBoxImpl());
		printer.setPaper(new A4PaperImpl());
		printer.print("测试内容");
	}
}

Printer.java:

package chaper11.printdemo.iface;
/**
 * 打印机类-使用标准的墨盒和纸张进行打印
 * @author Administrator
 *
 */
public class Printer {
	private IInkBox inkbox;//打印机中的墨盒
	private IPaper paper;//打印机中的纸张
	/**
	 * 打印机的打印方法-使用墨盒和纸张
	 * content 传递内容给打印机
	 */
	public void print(String content) {
		if (null == inkbox || null==paper) {
			System.out.println("墨盒和纸张出现错误,请安装正确后重试!");
			return;
		}
		//打印过程
		String color = inkbox.getColor();
		String type = paper.getSize();
		System.out.println("以下文字是"+ color +"颜色的!");
		System.out.println("使用纸张: "+ type);
		System.out.println("打印内容: "+ content);
	}
	public IInkBox getInkbox() {
		return inkbox;
	}
	public void setInkbox(IInkBox inkbox) {
		this.inkbox = inkbox;
	}
	public IPaper getPaper() {
		return paper;
	}
	public void setPaper(IPaper paper) {
		this.paper = paper;
	}
}

IPaper.java:

package chaper11.printdemo.iface;
/**
 * 定义获得纸张尺寸的标准方法(接口类) 
 * @author Administrator
 *
 */
public interface IPaper {
/**
 * 获得纸张的尺寸
 * @return
 */
	String getSize();
}

IInkBox.java:

package chaper11.printdemo.iface;
/**
 * 墨盒接口-定义一个通用方法=获得墨盒颜色(接口类)
 * @author Administrator
 *
 */
public interface IInkBox {
/**
 * 获得墨盒的颜色
 */
	public String getColor();
}

ColorInkBoxImpl.java:

package chaper11.printdemo.iface;
/**
 * 定义颜色墨盒
 * @作者 YanXiaolxy
 * @版本 2020.03
 * @时间 2021年1月19日 下午11:11:04
 */
public class ColorInkBoxImpl implements IInkBox{

	@Override
	public String getColor() {
		// TODO Auto-generated method stub
		return "红色";
	}
}

A4PaperImpl.java:

package chaper11.printdemo.iface;
/**
 * 定义纸张大小
 * @作者 YanXiaolxy
 * @版本 2020.03
 * @时间 2021年1月19日 下午11:30:15
 */
public class A4PaperImpl implements IPaper{
	@Override
	public String getSize() {
		// TODO Auto-generated method stub
		return "A4";
	}
}

总结

java程序执行顺序如下:
  1.类中所有属性的默认值(一举而成)。
  2. 父类静态属性初始化,静态块,静态方法的声明(按出现顺序执行)。
  3. 子类静态属性初始化,静态块,静态方法的声明 (按出现顺序执行)。
以上是(类加载过程,不涉及构造方法)。
  4. 调用父类的构造方法,首先父类的非静态成员初始化,构造块,普通方法的声明(按出现顺序执行)然后父类构造方法。
  5. 调用子类的构造方法,首先子类的非静态成员初始化,构造块,普通方法的声明(按出现顺序执行)然后子类构造方法。
其中:
1-3:类加载过程,不涉及构造方法。
1-5: 实例化过程,涉及构造方法。

本文地址:https://blog.csdn.net/yanxiaolxy/article/details/112854662