自定义异常基于类和对象多态继承抽象接口异常的汽车选择查询

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自定义异常基于类和对象多态继承抽象接口异常的汽车选择查询相关的知识,希望对你有一定的参考价值。

1.除咯try-catch,throw、throws等方法处理异常外,还可以自定义异常

例题:

public MyNumberException extends Exception

  public MyNumberException(String error)

  super(error);

public Test

  public static void main(String []args) throws MyNumberException

  Test test = new Test();

  System.out.println(test.add(1));

public static int add(Object object) throws MyNumberException

  if(object instanceof Integer)

  int num = (int)num;

  return num++;else

  MyNumberException myNumberException = new MyNumberException("你传入的参数不是整型!");

  throw myNumberException;

2.当自己定义的异常类的父类不是RuntimeException时,name需要在主方法后面throws一个MyNumberException异常

当父类异常类时RuntimeException时,则不需要在主方法后面抛一个MyNumberException异常。

3.instanceof关键字

用于对象 instanceof 实例化类的比较,返回值为Boolean类型,当左边为null时,不管与什么类比较时都会是false

4.实现汽车查询

1)定义一个抽象的父类(Car)包括车辆名称和车辆颜色两个属性,重写两个属性的构造方法来初始化对象,定义get和set方法

来传入和获取对象属性,再定义一个抽象方法seatNum来返回每个不同车类的座位数

2)轿车类(Sedan)、大巴类(Bus)、卡车类(Truck)来继承父类(Car)的构造方法、get和set方法以及seatNum方法

在卡车类(Truck)中要从接口Container里面重写的weight方法,并重写构造函数添加weight属性,以及重写weight方法来传入weight值

3)自定义一个异常类CarException类继承父类Exception并定义一个有参构造方法,并通过super(error)来进行有参构造

4)在测试类中创建三个不同车类的静态对象,并创建以个车类数组对象。在static代码块中创建键盘输入对象,对三个不同车类进行实例化并

传入数据,最后将他们存入Cars数组中。

5)在测试类类中添加showCars方法来通过foreach遍历循环每个Cars类中的car元素是否与不同车类的对象进行比较来输出不同车类的信息

并输入选择修改的车号码,通过switch-case函数来进行匹配,在调用update方法来对车辆属性进行修改

6)定义一个update方法参数列表为(String type)将传入的字符串与类对象进行匹配根据不同的车类重新修改他们的属性,并创建心得车类对象

传入到数组中,最后在函数的最后调用showCars方法来查看Cars数组中不同车的情况

7)最后在主方法中创建他test对象来调用showCars方法进行功能的实现。

 



以上是关于自定义异常基于类和对象多态继承抽象接口异常的汽车选择查询的主要内容,如果未能解决你的问题,请参考以下文章

JAVA基础笔记(很实用)继承-多态-抽象类-接口-异常-集合-IO-线程-Socket

封装,多态,反射,异常处理,网络编程

Java--多态,抽象类和接口

Java学习笔记3.7.3 抽象类接口与多态 - 多态

Dart抽象类和多态

python基础--面向对象高级异常处理网络编程