1 class lanpingException extends Exception
2 {
3 lanpingException(String msg)
4 {
5 super(msg);
6 }
7 }
8
9 class maoyanException extends Exception
10 {
11 maoyanException(String msg)
12 {
13 super(msg);
14 }
15 }
16
17 class Computer
18 {
19 private int state=2;
20 public void run()throws lanpingException,maoyanException
21 {
22 if(state==1)
23 {
24 throw new lanpingException("lanping!!!");
25 }
26 if(state==2)
27 {
28 throw new maoyanException("maoyan!!!");
29 }
30 System.out.println("run bat");
31 }
32 public void reset()
33 {
34 state=0;
35 System.out.println("computer reset!");
36 }
37 }
38
39 class Teacher
40 {
41 private String name;
42 private Computer comp;
43 Teacher(String name)
44 {
45 this.name=name;
46 comp=new Computer();
47 }
48 public void prelect()throws maoyanException
49 {
50 try
51 {
52 comp.run();
53 System.out.println(name+" speak");
54 }
55 catch(lanpingException e)
56 {
57 System.out.println(e.toString());
58 comp.reset();
59 prelect();
60 }
61 catch(maoyanException e)
62 {
63 System.out.println(e.toString());
64 test();
65 throw e;
66 }
67 }
68 public void test()
69 {
70 System.out.println("test yourself!");
71 }
72 }
73
74 class Kandra
75 {
76 public static void main(String[] args)
77 {
78 Teacher pp=new Teacher("cao");
79 try
80 {
81 pp.prelect();
82
83 }
84 catch(maoyanException e)
85 {
86 System.out.println("......");
87 }
88 }
89 }