首页 > 代码库 > (12)自定义异常代码练习

(12)自定义异常代码练习

 

public class computer
{  
  private int i = 1;
  public void run() throws LanPingExpion, MaoYanExcetion
  {
    if (i ==2 )
   throw new LanPingExpion("蓝屏了");
    if (i ==3) {
   throw new MaoYanExcetion("冒烟了");
  }
   System.out.println("电脑运行");
  }

 
   public void reset()
   {
    i=1;
  System.out.println("电脑重启"); 
   }

 

public class MaoYanExcetion extends Exception
{
 public MaoYanExcetion(String message) {
   super(message);
 }
 
}

public class LanPingExpion extends Exception
{

 public LanPingExpion(String message)
   {
  super(message);
   }

public class NoPanException extends Exception
{
   public NoPanException(String message)
   {
   super(message);
}

 

 

public class Teacher {
 private String name;
 private computer  cpu;
 Teacher(String name)
 {
    this.name = name;
    cpu = new computer();
 }

  public void prelece() throws MaoYanExcetion, NoPanException
  {
  try
  {
   cpu.run();
  } catch (LanPingExpion e)
  {
   cpu.reset();
  } catch (MaoYanExcetion e) {
   test();
      throw new NoPanException("课时无法继续" + e.getMessage());
  }
   System.out.println("上课");
  }
  public void test(){
   System.out.println("练习");
  
  }
}

 

public class ExceTepionTest
{
  public static void main(String[] args)
  {
  Teacher t = new Teacher("毕老师");
  try {
   t.prelece();
 } catch (Exception e) {
  System.out.println("放假" + e.toString());
 }
 
  }
 
}