try

02_Java语音进阶||day05_异常,异常的处理,自定义异常,线程

≯℡__Kan透↙ 提交于 2020-03-04 06:04:14
第一章 异常 1.1 异常概念 异常: 就是不正常的意思(字面) 异常 :指的是程序在 执行过程中 ,出现的 非正常情况 ,最终会 导致JVM 的非正常停止。 在Java中, 异常本身就是一个类 ,产生异常就是创建异常对象并抛出了一个异常对象。Java的处理方式是 中断处理 注:异常指的 并不是语法错误 ,如果语法错了,编译不会通过,不会产生字节码文件,根本不能运行。 1.2 异常体系 异常的根类:java.lang. Throwable ,其中两个子类:java.lang. Error和java .lang. Exception【异常平时指它】 2. Throwable 体系: * Error :严重错误Error, 无法 通过 处理 的错误, 只能事先避让 ,比如: 绝症 * Exception :表示异常,异常产生后程序员可以通过代码的方式纠正,使程序继续运行,是必须要处理的,比如: 感冒,阑尾炎 * 注:留意一下RuntimeExcepition(Exception子类):运行期间抛出的异常 1.3 异常分类 java.lang. Throwable :类是 Java 语言中所有 错误或异常的超类 。 Exception:编译期异常【!】 ,进行编译(写代码)java程序出现的问题—— 我们就必须处理这个异常,要么throws或者try…catch【重点】

Python学习 Part6:错误和异常

别等时光非礼了梦想. 提交于 2020-03-04 04:31:05
两种不同类型的错误:语法错误和异常 1. 语法错误 语法错误,也被称作解析错误: >>> while True print('Hello world') SyntaxError: invalid syntax 2. 异常 运行期间检测到的错误称为异常,并且程序不会无条件的崩溃。 >>> 10*(1/0) Traceback (most recent call last): File "<pyshell#43>", line 1, in <module> 10*(1/0) ZeroDivisionError: division by zero >>> 4+spam*3 Traceback (most recent call last): File "<pyshell#44>", line 1, in <module> 4+spam*3 NameError: name 'spam' is not defined >>> '2'+2 Traceback (most recent call last): File "<pyshell#45>", line 1, in <module> '2'+2 TypeError: Can't convert 'int' object to str implicitly >>> 异常是以不同的类型出现的,并且类型也被当作信息的一部分打印出来

JAVA常用关键字解释

空扰寡人 提交于 2020-03-03 23:16:35
下表是java中经常会用到的关键字: 一:用于定义访问权限修饰符的关键字: 1) public 公共的 public 关键字是可以应用于类、方法或字段(在类中声明的变量)的访问控制修饰符。可能只会在其他任何类或包中引用 public 类、方法或字段。 2) protected 受保护的 protected 关键字是可以应用于类、方法或字段(在类中声明的变量)的访问控制修饰符。可以 在声明 protected 类、方法或字段的类、同一个包中的其他任何类以及任何子类(无论子类是在哪个包中声明的)中引用这些类、方法或字段。 3) private 私有的 private 关键字是访问控制修饰符,可以应用于类、方法或字段(在类中声明的变量)。只能在声明 private类(不可用于普通类,只用于内部类)、方法或字段的类中引用这些类、方法或字 段。在类的外部或者对于子类而言,它们是不可见的,不能直接使用。 4) 默认的不使用任何关键字 不使用任何修饰符声明的属性和方法,对同一个包内的类是可见的。接口里的变量都隐式声明为public static final,而接口里的方法默认情况下访问权限为public。 二:用于定义类、方法和变量修饰符的关键字 1) abstract 声明抽象 abstract关键字可以修改类或方法。abstract类可以扩展(增加子类),但不能直接实例化。

spring——AOP原理及源码(二)

跟風遠走 提交于 2020-03-03 22:47:16
回顾: 在 上一篇 中,我们提到@EnableAspectJAutoProxy注解给容器中加入了一个关键组件 internalAutoProxyCreator的BeanDefinition,实际类型为 AnnotationAwareAspectJAutoProxyCreator的BeanDenation 并且发现这是一个后置处理器,也是一个XXXAware接口的实现类。以及探究了它的继承关系如下。 接下来我们就从后置处理器和BeanFactoryAware的角度来看看AnnotationAwareAspectJAutoProxyCreator的BeanDefinition创建完成后都做了什么。 一、设置调试断点 我们分别进入四个有关类,在类中与后置处理器和BeanFactoryAware有关的方法上打上断点。最终效果如下: AbstractAutoProxyCreator.setBeanFactoryAbstractAutoProxyCreator有后置处理器逻辑{  postProcessBeforeInstantiation()  postProcessAfterInitialization() } AbstractAdvisorAutoProxyCreator.initBeanFactoryAbstractAdvisorAutoProxyCreator

JavaScript常用方法函数收集

心已入冬 提交于 2020-03-03 21:02:21
本文中,收集了一些比较常用的Javascript函数,希望对学习JS的朋友们有所帮助。 1. 字符串长度截取 function cutstr(str, len) { var temp, icount = 0, patrn = /[^\x00-\xff]/, strre = ""; for (var i = 0; i < str.length; i++) { if (icount < len - 1) { temp = str.substr(i, 1); if (patrn.exec(temp) == null) { icount = icount + 1 } else { icount = icount + 2 } strre += temp } else { break; } } return strre + "..." } 2. 替换全部 String.prototype.replaceAll = function(s1, s2) { return this.replace(new RegExp(s1, "gm"), s2) } 3. 清除空格 String.prototype.trim = function() { var reExtraSpace = /^\s*(.*?)\s+$/; return this.replace(reExtraSpace, "$1") } 4.

javascript常用方法函数收集

冷暖自知 提交于 2020-03-03 21:01:39
字符串长度截取 function cutstr ( str , len ) { var temp , icount = 0 , patrn = /[^\x00-\xff]/ , strre = "" ; for ( var i = 0 ; i < str . length ; i ++) { if ( icount < len - 1 ) { temp = str . substr ( i , 1 ); if ( patrn . exec ( temp ) == null ) { icount = icount + 1 } else { icount = icount + 2 } strre += temp } else { break ; } } return strre + "..." } 替换全部 String . prototype . replaceAll = function ( s1 , s2 ) { return this . replace ( new RegExp ( s1 , "gm" ), s2 ) } 清除空格 String . prototype . trim = function () { var reExtraSpace = /^\s*(.*?)\s+$/ ; return this . replace ( reExtraSpace , "$1" )

Python异常处理

╄→гoц情女王★ 提交于 2020-03-03 15:58:15
异常是一个事件,其中一个程序,破坏程序的指令的正常流的执行过程中而发生的。一般情况下,当一个Python脚本遇到一些情况不能处理,就抛出一个异常。异常是一个Python对象,它表示一个错误。 当Python脚本抛出一个异常,它必须处理异常,否则将立即终止。 处理异常: 如果有可能会引发异常的一些可疑的代码,就可以通过将可疑的代码在一个try块:保卫你的程序。在try块,包括以下情况except:语句,其次是代码,作为优雅的处理问题,尽可能块。 语法 这里是try....except...else 块的简单语法: try: You do your operations here; ...................... except ExceptionI: If there is ExceptionI, then execute this block. except ExceptionII: If there is ExceptionII, then execute this block. ...................... else: If there is no exception then execute this block. 这里有一些关于上述语法要点: 单个try语句可以有多个不同的语句。当try块中包含可能会引发不同类型的异常语句,这是很有用的。

定时任务quartz

生来就可爱ヽ(ⅴ<●) 提交于 2020-03-03 11:10:30
原文: https://www.cnblogs.com/rinack/p/7815272.html package com.common.util; import org.quartz.CronScheduleBuilder; import org.quartz.CronTrigger; import org.quartz.Job; import org.quartz.JobBuilder; import org.quartz.JobDetail; import org.quartz.JobKey; import org.quartz.Scheduler; import org.quartz.SchedulerException; import org.quartz.SchedulerFactory; import org.quartz.Trigger; import org.quartz.TriggerBuilder; import org.quartz.TriggerKey; import org.quartz.impl.StdSchedulerFactory; /** * * @Description * @author qgw * 2016 上午10:05:59 ^_^ */ public class QuartzManager { private static

手写简单的web服务器

非 Y 不嫁゛ 提交于 2020-03-02 17:15:23
手写简单的web服务器 一、用到的知识 oop,容器,io,多线程,网络编程,xml解析,反射,HTML,http 1.反射 将Java类中的各种结构映射成一个个Java对象,利用反射对一个类进行解剖,反射是框架设计灵魂 jdk9 用反射创建对象不再用.newInstance()创建对象,而是getConstructor().newInstance(); clz = Class.forName("包名.类名");//创建对象clz.newInstance();//9,不再这样用clz.getConstructor().newInstance(); 2.xml解析 XML 可扩展标记语言 树结构 这里用SAX解析 { //1、获取解析工厂 SAXParserFactory factory=SAXParserFactory.newInstance(); //2、从解析工厂获取解析器 SAXParser parse =factory.newSAXParser(); //3、编写处理器 //4、加载文档 Document 注册处理器 PHandler handler=new PHandler(); //5、解析 parse.parse(Thread.currentThread().getContextClassLoader() .getResourceAsStream("com/sxt

python 异常处理

一世执手 提交于 2020-03-02 08:46:41
提供一种方式: 既可以显现友好,还能把完整的异常信息拿到 import traceback print(str(traceback.format_exc())) 异常捕获的5种方式 1) try: … except: …. 捕获所有的异常信息。打印异常信息可以:print (traceback.format_exc()) 2) try: … except Exception as e: …. 捕获异常,并得到异常信息,只有异常信息,没有traceback信息、也没有错误类型。 3) try: … except 特定的异常: print 捕获特定的异常信息,其他形式的异常不捕获。 4) 不处理异常, try...finally...子句用来表达这样的情况: finally: 我们不管程序捕捉到的是什么错误,无论错误是不是发生,这些代码“必须” 运行,比如文件关闭,释放锁 (例如zookeeper锁),把数据库连接连接返还给连接池等。 5) try: xxx except:xxx finally:xxx 来源: https://www.cnblogs.com/hellojackyleon/p/9695719.html