可以参考下:
class MyExpection extends Exception{
String message;
MyExpection(String str){
this.message = str;//把参数的引用传给message成员变量
}
public String getMessage() {
return message;//返回message成员变量
}
}
abstract class A {
abstract int f(int x, int y) throws MyExpection;
}
class B extends A{
int f(int x,int y)throws MyExpection{
if(x <= 100 && y <= 100)//判断x、y都不大于100
throw new MyExpection("乘数超过100");//抛出一个MyException对象,构造方法参数为“乘数超过100”
return x*y;
}
}
public class eClass{
public static void main(String args[]){
A a;
a = new B();//用B类上传转型对象为a赋值
try{
System.out.println(a.f(12,10));
a.f(110, 1);//调用f()方法并传入乘数110、1
}catch(MyExpection e){
e.printStackTrace();
}
}
}