实验九 异常的抛出,捕获并处理

1.源程序

package err;

public class err {
public static void main(String[] args) throws IllegalArgumentException
{ Point point1=new Point (25,1);
Point point2=new Point (46,2);
Point point3=new Point (9,3);
new Rectangle(point1, 12,3);
new Triangle(point1,point2,point3);
Point[] point= {point1,point2};
new Polygon(point);
}

}

class Point
{ public Point() {};
public int x;
public int y;
public Point(int x,int y)
{ this.x=x;
this.y=y;

if(x<0||y<0)
throw new IllegalArgumentException("Point中无效参数异常");
}
}
class Rectangle extends Point
{
public int length,width;
public Rectangle(Point point1,int length,int width) {
this.length=length;
this.width=width;
if(length<0||width<0)
throw new IllegalArgumentException("Rectangle无效参数异常");
}
}
class Triangle extends Point 
{

public Triangle(Point point1,Point point2,Point point3) {
if(point1.x/point1.y==point2.x/point2.y&&point2.x/point2.y==point3.x/point3.y)
throw new IllegalArgumentException("Triangle无效参数异常");
}
}

class Polygon extends Point
{ int i=0;
public Polygon(Point[] points)
{ i=points.length;
if(i<=2)
throw new IllegalArgumentException("Polygon无效参数异常");
}

}

2.实验结果

3.心得体会

此实验对我来说难度较大,对异常的捕获的概念比较模糊。通过向同学请教了解了一些,不过还是没有熟练掌握,以后好好改进。

原文地址:https://www.cnblogs.com/wzl55/p/10930073.html

时间: 2024-08-29 12:29:07

实验九 异常的抛出,捕获并处理的相关文章

实验九 异常的抛出、捕获并处理

一. 实验代码如下: public class 图形 { public static void main(String[] args) {    point p1=new point(0,0);  point p2=new point(1,0);  point p3=new point(0,1);  rectangle r=new rectangle(p1,5,6);  triangle t=new triangle(p1,p2,p3);  point[] point= {p1,p2};  ne

实验九:异常的抛出,捕捉并处理

实验程序: package 实验九; import java.util.Scanner; public class Point { static int x; static int y; Point(int x,int y){ Point.x=x; Point.y=y; } @SuppressWarnings("serial") public static void main(String[] args) { try { @SuppressWarnings({ "unused

异常的抛出和捕获

<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>异常的抛出和捕获</title> <script type="text/javascript"> //快捷键F12,或者找到开发者工具 查看问题 //只要出现异常(比如拼写错误),没有处理,脚本就中断执行 //出错后面的就执行

【ThinkingInJava】24、捕获一个异常之后抛出另外一个异常,并且希望吧原始的信息保存下来

/** * 书本:<Thinking In Java> * 功能:捕获一个异常之后抛出另外一个异常,并且希望吧原始的信息保存下来,这个被称为异常链 * 文件:DynamicFields.java * 时间:2015年4月9日16:24:44 * 作者:cutter_point */ package Lesson12_error_handling_with_exceptions; import static net.mindview.util.Print.*; class DynamicFiel

实验九 异常、断言与日志

实验九 异常.断言与日志 实验时间 2018-10-25 1.实验目的与要求 (1) 掌握java异常处理技术: (2) 了解断言的用法: (3) 了解日志的用途: (4) 掌握程序基础调试技巧: 2.实验内容和步骤 实验1:用命令行与IDE两种环境下编辑调试运行源程序ExceptionDemo1.ExceptionDemo2,结合程序运行结果理解程序,掌握未检查异常和已检查异常的区别. //异常示例1 public class ExceptionDemo1 { public static vo

异常何时抛出?何时自己处理?

原始问题: 关于异常中,何时在该类中处理,何时抛给调用类处理,比较纠结.比如IO中new FileInputStream(),new InputStreamReader(fStream, "UTF-8");in.readLine()等他们异常哪些本类中处理,还是都抛给调用者. 讨论: 李:其实对于方法中的异常处理有两种方法:1.在该函数中用try...catch语句进行捕获和处理.2.直接抛出异常(这种做法有一点模糊,因为并不能确定该方法是否有异常),那么调用该方法的调用者就要处理这个

异常的抛出

  div的异常抛给main来处理: class Math{     public int div(int i,int j)throws Exception{         int temp=i/j;         return temp;     } } public class ThrowsDemo01 { public static void main(String[] args){     Math m=new Math();         try {             Sy

实验九:异常的抛出、捕获并处理

(1)测试Point类中参数异常 point1中参数是负数,故参数报错 (2)测试Rectangle类中参数异常 矩形的高为负数,故参数报错 (3)测试Triangle类中参数异常 由于三个点斜率都一样,故在一条直线上,参数报错 (4)测试Polygon类中参数异常 由于只传入了两个点的参数,无法构成多边形,故参数报错 源代码如下: 1 package error; 2 3 public class Throwerror { 4 public static void main(String[]

C# 中异常抛出捕获机制--throw / try,catch,finally

try { messagebox.show("true"); } catch { messagebox.show("false"); } finally { messagebox.show("finally"); } notes:      抛出异常用 throw new exception,捕获异常用 try..catch..finally try ... catch 的目的是解决程序在出现错误时无法继续执行下去的问题. try不一定只能和ca