java异常处理知识大杂烩

本文通过三个实例详细介绍了Java中常见的异常处理方式,包括如何使用try、catch和finally语句块来处理不同类型的异常,例如除以零错误和资源释放等。

五个常见的异常:ArrayIndexOutofBoundsException、NullPointerException、ArithmeticException、ClassNotFoundException、IOException.

分享一个小例子:

    public class Test1{

            public static void main(String[] args){

                    try{

                            System.out.println("try 打印输出");

                    }finally{

                          System.out.println("finally 打印输出");

                     }

              }

     }

输出结果:try打印输出

          finally打印输出

备注:这个没有什么好纠结的啦,finally最后无论是否异常肯定是要输出的啦。

 public class Test2{

            public static void main(String[] args){

                     int a=1;

                     int b=0;

                      int c;

                    try{

                           c=a/b; 

                     }catch(ArithmeticException ae){

                             System.out.println("捕获整数为零异常");

                     }catch(Exception e){

                             System.out.println("捕获异常");

                      }finally{

                          System.out.println("finally 打印输出");  

                      }

                      }

}

输出结果:捕获整数为零异常

                    finally打印输出

备注:当出现异常的时候,当有多个catch的时候,当捕获到异常之后,后面的catch不执行。当父类的catch(Exception e)在子类的catch(ArithmeticException ae)之前,则编译报错。

 public class Test3{

            public static void main(String[] args){

                   Test3 test =new Test3();

                    int index = test.Demo();

                    System.out.println(index);

             }

             public int Demo(){

                      

                    try{

                            System.out.println("try 打印输出");

                             return 1;

                     }finally{

                          System.out.println("finally 打印输出");

                          //方案一不注释return 2;   方案二注释掉return 2; 

                            return 2; 

                           

                     }

              }

}

方案一输出结果:try 打印输出
                           finally 打印输出

                           2

方案二输出结果:try 打印输出
                           finally 打印输出

                           1


备注:方案一为什么会是输出2,结合方案一按结果往回推,在执行完finally之前try中是不可以被返回内容的的。



内容概要:本文系统介绍了算术优化算法(AOA)的基本原理、核心思想及Python实现方法,并通过图像割的实际案例展示了其应用价值。AOA是一种基于种群的元启发式算法,其核心思想来源于四则运算,利用乘除运算进行全局勘探,加减运算进行局部开发,通过数学优化器加速函数(MOA)和数学优化概率(MOP)动态控制搜索过程,在全局探索与局部开发之间实现平衡。文章详细解析了算法的初始化、勘探与开发阶段的更新策略,并提供了完整的Python代码实现,结合Rastrigin函数进行测试验证。进一步地,以Flask框架搭建前后端离系统,将AOA应用于图像割任务,展示了其在实际工程中的可行性与高效性。最后,通过收敛速度、寻优精度等指标评估算法性能,并提出自适应参数调整、模型优化和并行计算等改进策略。; 适合人群:具备一定Python编程基础和优化算法基础知识的高校学生、科研人员及工程技术人员,尤其适合从事人工智能、图像处理、智能优化等领域的从业者;; 使用场景及目标:①理解元启发式算法的设计思想与实现机制;②掌握AOA在函数优化、图像割等实际问题中的建模与求解方法;③学习如何将优化算法集成到Web系统中实现工程化应用;④为算法性能评估与改进提供实践参考; 阅读建议:建议读者结合代码逐行调试,深入理解算法流程中MOA与MOP的作用机制,尝试在不同测试函数上运行算法以观察性能差异,并可进一步扩展图像割模块,引入更复杂的预处理或后处理技术以提升割效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值