异常

五个异常关键词

  1. try-catch-finally的写法格式

    public void method(){try {//代码段1//产生异常的代码段}catch(异常类型 e){//对异常进行处理的代码段3}finally{//一定要执行的代码块}}
     public void method(){try {// 代码段} catch (异常类型 ex) {// 对异常进行处理的代码段}// 代码段}
    public void method(){try {// 代码段// 产生异常(异常类型2)} catch (异常类型1 ex) {// 对异常进行处理的代码段} catch (异常类型2 ex) {// 对异常进行处理的代码段} catch (异常类型3 ex) {// 对异常进行处理的代码段}// 代码段}

    上面三种都是正确的写法,然后注意一下下面几点

    1. 如果try内部没有错误,那么就会直接跳过catch段,进入下面对的代码,有这个主要就是为了保证代码能够在一些错误发生的时候也能正常的运行到下面的程序,并且抛出一些错误的原因

    2. 注意Exception类就是前面的异常类型,并且这个类是所有的异常的父类,在第三种格式时,注意下将Exception类放到最后一个异常捕获里,如果你不能保证已经将所有的异常都放入了catch里,然后还有ex其实就是变量的意思.(如果我没理解错的话)

    3. 然后如果没有catch的话,注意要写finally不然格式报错,具体可以看下下面的代码

       import java.util.Scanner;​public class one {{System.out.println("ajkdjak");}​public static void main(String[] args ){one o = new one();Scanner input = new Scanner(System.in);int a,b;try{System.out.print("输入第一个数:");a = input.nextInt();System.out.print("输入第二个数:");b = input.nextInt();System.out.println("他们的商为:" + a / b);}finally {System.out.println("这是结束点1");}System.out.println("这是结束点2");​}}

      你可以自己运行下,最后一条输出语句在上面的写法中是输不出来的,不过稍微修改下就可以了

       import java.util.Scanner;​public class one {{System.out.println("ajkdjak");}​public static void main(String[] args ){one o = new one();Scanner input = new Scanner(System.in);int a,b;try{System.out.print("输入第一个数:");a = input.nextInt();System.out.print("输入第二个数:");b = input.nextInt();System.out.println("他们的商为:" + a / b);}catch(Exception e) {System.out.println("这是结束点1");}System.out.println("这是结束点2");​}}
    4. 然后如果你要它抛出下是什么导致的异常,可以这么写

       import java.util.Scanner;​public class one {{System.out.println("ajkdjak");}​public static void main(String[] args ){one o = new one();Scanner input = new Scanner(System.in);int a,b;try{System.out.print("输入第一个数:");a = input.nextInt();System.out.print("输入第二个数:");b = input.nextInt();System.out.println("他们的商为:" + a / b);}catch(Exception e) {System.out.println("这是结束点1");e.printStackTrace();}System.out.println("这是结束点2");​}}

      然后注意下,错误可能抛得到处都是,所以没必要纠结

其他

  1. 我不知道有没有和我一样当初为了学算法第四版,直接下载的第四版的jetbrain,然后直接在类中写,可以写出下面这样的语句

     public A {Scanner input = new Scanner();}

    但是写不出

     public A {Scanner input = new Scanner();System.out.pritlen("");//这条语句你写不出来}

    不要怀疑,建议在主函数里输出函数,不要在类中直接写,你如果真的想写的话,那就写成下面这个样

     public A {{Scanner input = new Scanner();System.out.pritlen("");}}
  2. 然后因为上面这个原因,我把我原来的jetbrain给卸载了,直接装了终极版,然后我还写出了这样的东西

     public class one {{System.out.println("ajkdjak");}public static void main( ){one o = new one();Scanner input = new Scanner(System.in);int a,b;System.out.print("输入第一个数:");a=input.nextInt();System.out.print("输入第二个数:");b=input.nextInt();System.out.println("他们的商为:"+a/b);}}

    然后我找了半天没找到编译的按钮,然后run的按钮也没有,让我百思不得其解,后来发现是我忘记在main里加这个String[] args导致的错误………………绝了

java学习笔记2022.1.12相关推荐

  1. java学习笔记 2022.2.11

    2022.2.11 on java 8 摘录(反射) 加载.这是由类加载器执行的.该步骤会先找到字节码(通常在类路径中的磁盘上,但也不一定),然后从这些字节码中创建一个Class对象. 链接.链接阶段 ...

  2. java学习笔记2022.2.11

    on java 8 摘录(反射) 面向对象编程的一个基本目标就是,让编写的代码只操纵基类(本例中为Shape)的引用 Shape接口中的方法draw()是可以动态绑定的,因此客户程序员可以通过泛化的S ...

  3. java 学习笔记2022.1.26

    排序 Comparator接口 有关于Comparator接口,这个接口一般是作为参数放在排序方法里的,最开始我也觉得挺别扭的,后面想了想,这也主要是因为在java中,单独的一个函数不能存在,所以设计 ...

  4. java学习笔记2022.1.15

    其他 public class PokeDemo {public static void main(String[] args ){try {Pokemon a1 = PokemonManage.ge ...

  5. java学习笔记2022.1.17

    ### 包装类 1. 需要知道的一些知识点 package xiangzi;public class TestOne {public static void main(String[] args){I ...

  6. java学习笔记2022.1.13

    异常 System.exit(非0整数):用来终止程序,可以避免执行finally,如下可以参考 import java.util.Scanner;​public class one {{System ...

  7. java学习笔记2022.1.11

    因为我提前的傻逼行为,导致1.11的笔记基本全没了,没保存的泪流满面,然后缺失的是方法内部类还有匿名内部类,有时间的话会补完,没时间就算了 首先谈方法内部类 public class D {publi ...

  8. 2022年Java学习笔记目录

    一.2022年Java任务驱动课程 任务驱动,统摄知识点:2022年Java程序设计讲课笔记 二.2022年Java学习笔记 (一)踏上Java开发之旅 Java学习笔记1.1.1 搭建Java开发环 ...

  9. Java学习笔记:2022年1月7日

    Java学习笔记:2022年1月7日 摘要:今天的这篇笔记主要是通过讲解基本的JVM结构来理解Java中一些行为的运行机制,进而更加的深入理解Java的运行原理. 文章目录 Java学习笔记:2022 ...

最新文章

  1. sparkstreaming监听hdfs目录如何终止_Spark笔试题:Spark Streaming 反压机制
  2. Python的内存管理、命名规则、3个特性讲解
  3. .Net Petshop详解(二):petshop三层结构之DataTier
  4. Google Guice结合模式
  5. Content-Disposition 响应头,设置文件在浏览器打开还是下载
  6. Spring HttpMessageNotReadableException异常
  7. 2017年15佳Android黑客应用
  8. SpringMVC之源码分析--ThemeResolver(三)
  9. Spring Boot基础学习笔记19:自定义RedisTemplate与RedisCacheManager
  10. mysql不支持emoji表情的问题的解决方法
  11. Redis基础学习(四)—Redis的持久化
  12. gcc 中的__attribute__ ((packed)) gcc移植,内存对齐.结构体对齐-转
  13. openresty lua_package_path指令
  14. 大数据算法_大数据算法下的我们,犹如“皇帝的新衣”
  15. 用R语言进行分位数回归
  16. Apple TV 4K播放原盘电影
  17. tomcat7的下载和安装配置
  18. eol自动化测试系统监控软件,EOL测试系统总体方案.doc
  19. selenium webdriver操作chrome options、 启用无痕模式、缓存烦恼
  20. 稀疏矩阵的加法(用十字链表实现A=A+B)

热门文章

  1. STL源码剖析---vector
  2. hihocoder #1388 : Periodic Signal NTTFFT
  3. 如何在VirtualBox虚拟机软件上安装Win7虚拟系统
  4. 下载大文件 不经过php 直接让apache发送文件给客户端 mod_xsendfile
  5. C# IO操作(五)文件的递归加载
  6. leetcode - Single Number
  7. Oracle Data Gurad Physical Standby 相关说明
  8. WinAPI: 钩子回调函数之 HardwareProc
  9. 关于引进制转换(凌乱)
  10. mysql二进制升级_MySQL二进制安装,升级,多实例部署