自定义异常、基于类和对象、多态、继承、抽象、接口、异常的汽车选择查询
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方法进行功能的实现。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
· 零经验选手,Compose 一天开发一款小游戏!