之前的文章(
点击打开链接)中解决此问题使用的同步代码块,本次使用的线程安全类来顺序输出,并还能认识到一个Java异常和抛出异常的原因。
线程安全类代码:
package JavaDay5_29;
/**
* @author myvina@qq.com
* @date 18-5-29 上午10:28
*/
public class PrintLetter {
private final char beginLetter;
private final char endLetter;
private char letter;
public PrintLetter(char beginLetter, char endLetter) {
this.beginLetter = beginLetter;
this.endLetter = endLetter;
this.letter = beginLetter;
}
public synchronized char getLetter() {
return letter;
}
public synchronized void nextLetter() {
letter += 1;
if(letter > endLetter) {
letter = beginLetter;
}
}
public synchronized void printLetter() {
System.out.print(letter);
i