黑马程序员技术交流社区
标题:
构造函数与自定义异常类
[打印本页]
作者:
彭盼
时间:
2012-3-12 21:21
标题:
构造函数与自定义异常类
本帖最后由 彭盼 于 2012-3-12 21:29 编辑
interface shape
{
void getArea();
}
class Rec implements shape
{
double a,b;
Rec(double a,double b)throws NovalueException
{
if(a<=0||b<=0)
throw new NovalueException("出现非法值");
a=this.a;
b=this.b;
}
public void getArea()
{
System.out.println("您输入的是长方形,面积是:"+a*b);
}
}
class NovalueException extends RuntimeException
{
NovalueException(String msg)
{
super(msg);
}
}
class Test1
{
String Tc;
void function(Rec Tc)
{
try
{
Tc.getArea();
}
catch (NovalueException e)
{
e.toString();
}
}
}
class ExceptionTest1
{
public static void main(String[] args)
{
Test1 t=new Test1();
t.function(new Rec(1.89,8));
}
}
此程序是用来运算圆的面积,有个异常类用来报错,我运行后,程序总是显示结果是零,好像对象t并没有把参数传给方法getArea,为什么呢,java中对象不是可以自动执行
构造函数Rec吗,既然执行了为什么参数没进getArea方法
作者:
冯林
时间:
2012-3-12 21:27
class Rec implements shape
{
double a,b;
Rec(double a,double b)throws NovalueException
{
if(a<=0||b<=0)
throw new NovalueException("出现非法值");
a=this.a;
b=this.b;
}
public void getArea()
{
System.out.println("您输入的是长方形,面积是:"+a*b);
}
}
这里的
a=this.a;
b=this.b;
应该是
this.a=a;
this.b=b;
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2