当前位置: 首页 > news >正文

织梦网站导入链接怎么做徐汇网站制作

织梦网站导入链接怎么做,徐汇网站制作,wordpress外网访问不,哪哪个网站可以做兼职【0】README 0.1#xff09; 本文描述源代码均 转自 core java volume 1#xff0c; 旨在理解 java异常——异常分类声明已检查异常如何抛出异常自定义异常类 的相关知识#xff1b; 0.2#xff09;异常处理的任务#xff1a; 就是将控制权从错误产生的地方转移给能够处…【0】README 0.1 本文描述源代码均 转自 core java volume 1 旨在理解 java异常——异常分类声明已检查异常如何抛出异常自定义异常类 的相关知识 0.2异常处理的任务 就是将控制权从错误产生的地方转移给能够处理这种case 的错误处理器 0.3为了能够在程序中处理异常情况 必须研究程序中可能会出现的错误和问题以及哪类问题需要关注 0.3.1用户输入错误用户输入 URL 而其语法却不正确0.3.2设备错误硬件不总是让它做什么它就做什么 比如打印机关掉了0.3.3物理限制磁盘满了可用存储空间已被用完0.3.4代码错误程序方法有可能无法正确执行 【1】异常分类 1.1java中 异常都是派生于 Throwable 类的一个实例 且如果java内置的异常类不能够满足需求用户可以自己创建异常类下图显示了 java异常层次结构的简化图 对上图的分析Analysis A1Error类层次结构描述了java运行时系统的内部错误和资源耗尽错误 这种case 很少出现A2Exception层次结构划分成两个分支的规则是 由程序错误导致的异常属于 RuntimeException, 而程序本身没有问题 但由于像 IO错误这类问题导致的异常属于其他异常 1.2派生于RuntimeException 的异常包含下面几种 Cases运行时异常的几种 cases 这属于未检查类异常unchecked C1错误的类型转换C2数组访问越界C3访问空指针 1.3不是派生于 RuntimeException 的异常包括 C1试图在文件尾部后面读取数据C2试图打开一个不存在的文件C3试图根据给定的字符串查找class 对象 而这个字符串表示的类并不存在 Attention A1如果出现 RuntimeException 异常 那么就一定是你的问题了 这是一条相当有道理的规则A2应该通过检测数组下标是否越界来避免 ArrayIndexOutofBoundException 异常应该通过在变量使用前检测是否为空来杜绝 NullPointerException 异常的发生 1.4异常分类 1.4.1未检查异常不需要throw 抛出的异常这是程序运行过程中出现的错误 java语言规范 派生于 Error类 或 RuntimeException类的所有异常称为 未检查异常unchecked1.4.2已检查异常需要显式抛出的异常所有其他的异常称为 已检查异常checked 【2】声明已检查异常 2.1如果遇到了无法处理的case java抛出一个异常 这个道理很简单 一个方法不仅需要告诉编译器将要返回什么值 还要告诉编译器有可能发生什么错误例如 一段读取文件 的代码知道有可能读取的文件不存在 或者内容为null 因此 试图处理文件信息的代码就需要通知编译器可能会抛出 IOException 类的异常 2.2方法应该在其首部声明所有可能抛出的 异常 这样可以从首部反映出这个方法可能抛出哪类已检查异常如 public FileInputStream(String name) throws FileNotFoundException , 如果上述代码真的抛出了异常 那么运行时系统就会开始搜索异常处理器 以便知道如何处理 FileNotFoundException 对象 2.3在自己编写方法时 不必将所有 可能抛出的异常全部都进行声明。 至于什么时候需要在方法中用 throws 子句声明异常 什么异常必须使用 throws 子句声明 需要记住下面遇到的 4种 Cases 应该抛出异常 C1调用一个抛出已检查异常的方法 例如 FileInputStream 构造器C2程序运行过程中发现错误 并且利用 throw 语句抛出一个已检查异常C3程序出现错误 例如 a[-1]0 会抛出一个 ArrayIndexOutOfBoundsException 这样的未检查异常C4 java 虚拟机和运行时库出现的内部错误2.3.1如果出现前两种cases 之一 则必须告诉调用这个方法的程序员有可能抛出异常。因为任何一个抛出异常的方法都有可能是一个死亡陷阱。如果没有处理器捕获这个异常 当前执行的线程就会结束2.3.2对于那些可能被其他人使用的 java方法 应该根据异常规范 在方法的首部声明这个方法可能抛出的异常 class MyClass {public Image loadImage(String s) throws IOException } 2.3.3如果一个方法有可能抛出多个已检查异常 那么就必须在方法的首部列出所有的异常类。每个异常类之间用逗号隔开 class MyClass {public Image loadImage(String s) throws FileNotFoundException, EOFException } 2.3.4但是不需要 声明java 的内部错误 即从Error 继承的错误。因为任何程序代码都具有抛出那些异常的潜能 而我们对其没有任何控制能力2.3.5同样 也不应该声明从 RuntimeException 继承的那些未检查异常因为 这些错误完全在我们的控制之下 如果特别关注数组下标引发的错误 就应该将更多的时间花在 修正程序的错误上 而不是说明这些错误发生的可能性上 //bad style 错误的异常抛出格式RuntimeException属于未检查类异常是不需要throw 抛出的异常这是程序运行过程中出现的错误 class MyClass {public Image loadImage(String s) throws ArrayIndexOutOfBoundsException //bad style 错误的异常抛出格式 } Conclusion C1总之 一个方法必须 声明 所有可能抛出的已检查异常 而未检查异常要么不可控制Error 要么就应该避免发生RuntimeException。 如果方法没有声明所有可能发生的已检查异常 编译器就会给出一个错误消息C2当然除了声明异常之外 还可以捕获异常 这样会使得异常不被抛出到方法之外也不需要 throws 规范稍后 我们来讨论如何决定一个异常是被捕获 还是被抛出让其他的处理器进行处理 Warning W1如果在子类中覆盖了超类中的一个方法 子类方法中声明的已检查异常不能比超类方法中声明的异常更通用也就是说 子类方法中可以抛出更特定的异常 或者根本不抛出任何异常W2特别需要说明的是 如果超类方法没有抛出任何已检查异常 子类也不能抛出任何已检查异常2.3.6如果类中的一个方法声明将会抛出一个异常 而这个异常是某个特定类的实例时 则这个方法就有可能抛出一个这个类的异常 或者这个类的任意一个子类的异常看个荔枝 例如 FileInputStream 构造器声明将有可能抛出一个 IOException异常然而并不知道具体是哪种IOException异常 它既可能是 IOException异常也可能是其子类的异常例如 FileNotFoundException 【3】如何抛出异常 3.1首先要决定抛出什么类型异常 。如 EOFException异常描述为“在输入过程中 遇到了一个未预期的EOF后 的信号” 3.2下面抛出这个异常的语句 throw new EOFException(); 或者 EOFException e new EOFException(); throw e; 3.2.1EOFException类还有一个字符串参数的构造器。这个构造器更加详细的描述异常出现的情况 String gripe content-length len , received: n; throw new EOFException(gripe); 3.2.2在以下cases 下 一旦方法抛出异常 这个方法就不可能返回到调用者了 case1找到一个合适的异常类case2创建这个类的一个对象case3将对象抛出 【4】创建异常类自定义异常类 4.1我们需要做的只是定义一个派生于Exception的类 或者派生于Exception子类的类 4.2定义的类应该包含两个构造器 一个是默认的构造器 另一个是带有详细描述信息的构造器超类Throwable 的toString 方法将会打印出这些详细信息 在调试中非常有用 class FileFormatException extends IOException {public FileFormatException() {} //1、默认构造器public FileFormatException(String gripe) //2、带有详细描述信息的构造器{super(gripe);} } 4.2.1现在就可以抛出自定义的异常类型了 String readData(BufferedReader in) throws FileFormatException {throw new FileFormatException(); } [API] java.lang.Throwable 1.0 Throwable() 构造一个新的 Throwable 对象 这个对象没有详细的描述信息ThrowableString msg构造一个新的 Throwable 对象 这个对象包含详细的描述信息习惯上 所有派生的异常类都支持一个默认构造器和一个带有描述信息的构造器String getMessage() 获得Throwable 对象 的详细描述信息
http://www.huolong8.cn/news/387684/

相关文章:

  • 可以做网站的公司企业电子商务网站开发实训目的
  • 网站锚点链接怎么做什么做电子书下载网站
  • 在线ps网站辽宁省住房和城乡建设部网站主页
  • 南昌启航科技外国网站在内地做seo
  • 网站开发常用数据库聚财洋气三个字公司名字
  • 适合个人做的外贸平台昆明网站seo优化
  • 四川网站备案核验单关于单位网站建设的
  • 网站域名等级成都app开发团队
  • 网站页面布局的目的公司建设网站哪家好
  • 个人做网站 优帮云怎样在别人网站做加强链接
  • 深圳公司网站设计哪家好青海住房建设厅网站
  • 张家口市网站建设商标交易网
  • 建立网站ftp是什么网页界面设计中一般使用的分辨率显示密度是
  • 网站审核要多久网站备案拍照要求
  • 公司推广做哪个网站吗一级造价师停考最新消息
  • wep购物网站开发模板wordpress 放弃
  • 网站域名怎么起菜鸟建网站
  • 公园网站建设方案 ppt模板三亚
  • 网站充值 下模板宁波正规优化seo公司
  • 企业网站建设人员分析免费注册的网站
  • 社交类网站开发新品发布会一般在哪里举行
  • 建设网站的法律可行性上海装修公司前十强排名榜
  • 福田做网站库车网站建设
  • 搭建网站是什么专业旅行网站定制公司
  • 东莞搜索seo网站关键词优化wordpress积分冻结
  • 制作网站比较大的几家公司辽宁网站推广
  • 不配置iis做网站创建网站教程
  • 湖南金辉建设集团有限公司网站教育培训网站建站
  • 网站源码被注册为商标简易网站制作软件
  • 网站关键词描述网络购物商城系统