01 2020 档案
摘要:把各种不同的异常进行分类 每个异常都是一个对象,是 Throwable 或其子类的实例 一个方法出现异常后便抛出一个异常对象,该对象中包含有异常信息,调用对象的方法可以捕获到这个异常并进行处理 Java 中的异常处理通过 5 个关键词实现:throw、throws、try、catch 和 final
阅读全文
摘要:造成的原因是工程中存在 jar 包编译时所用的 JDK 版本高于工程 build path 中 JDK 的版本。 这里的 version 52 对应 JDK 版本是 1.8,将项目的 build path 中 JDK 的版本调整为高于或等于 1.8 即可。 原文链接 Java 自学经历 Java 面
阅读全文
摘要:OutOfMemoryError 分为多种不同的错误: Java heap space 原因:JVM 中 heap 的最大值不满足需要 解决: 调高 heap 的最大值,-Xmx 的值调大 如果程序存在内存泄漏,增加 heap 空间也只是推迟该错误出现的时间而已,要检查程序是否存在内存泄漏 GC o
阅读全文
摘要:运行时异常都是 RuntimeException 子类异常 NullPointerException - 空指针异常 ClassCastException - 类转换异常 IndexOutOfBoundsException - 下标越界异常 ArithmeticException - 计算异常 Il
阅读全文
摘要:截取字符串统计字符串出现次数 通过替换字符串,统计字符串出现次数 通过正则表达式,统计字符串出现次数 原文链接 Java 自学经历 Java 面试题 H5 Java 面试题小程序
阅读全文
摘要:有几点注意事项: 默认文件里的字符串是按行进行统计的,如果字符串存在跨行的情况,那需要考虑把字符串进行拼接、去除换行符。这里未考虑 字符串里出现的字符串的次数的问题可以使用: indexOf 方法配合 substring 方法获取;正则表达匹配;替换指定单词未空,通过缩减长度 / 单词长度,即未次数
阅读全文
摘要:打印结果 原文链接 Java 自学经历 Java 面试题 H5 Java 面试题小程序
阅读全文
摘要:单向链表反转一般有两种实现思路: 循环遍历 递归 代码如下: 原文链接 Java 自学经历 Java 面试题 H5 Java 面试题小程序
阅读全文
摘要:先自己实现一个单向的链表 题目中链表是有序的,所以不需要考虑排序问题 mergeeSingleLinkedList 方法合并链表,思路 获取两个链表中的首节点 比较首节点大小,结果分别存入 small、large 节点 把 small 节点存入新的链表,再比较获取 small.next 和 larg
阅读全文
摘要:常用的对称加密算法:DES、AES、3DES、RC2、RC4 常用的非对称加密算法:RSA、DSA、ECC 单向散列函数的加密算法:MD5、SHA 原文链接 Java 自学经历 Java 面试题 H5 Java 面试题小程序
阅读全文
摘要:原文链接 不算狗血的Java自学经历 Java 面试题 小程序
阅读全文
摘要:时间复杂度分析: 1、大 O 复杂度表示法:T(n) = O(f(n)),公式中的 O,表示代码的执行时间 T(n) 与 f(n) 表达式成正比 只关注循环执行次数最多的一段代码 总复杂度等于量级最大的那段代码的复杂度 嵌套代码的复杂度等于嵌套内外代码复杂度的乘积 2、最坏情况时间复杂度:代码在最理
阅读全文
摘要:时间复杂度的全称是渐进时间复杂度(asymptotic time complexity),表示算法的执行时间与数据规模之间的增长关系。 空间复杂度全称就是渐进空间复杂度(asymptotic space complexity),表示算法的存储空间与数据规模之间的增长关系。 原文链接 不算狗血的Jav
阅读全文
摘要:复杂度 复杂度也叫渐进复杂度,包括时间复杂度和空间复杂度,用来分析算法执行效率与数据规模之间的增长关系,可以粗略地表示,越高阶复杂度的算法,执行效率越低。 复杂度描述的是算法执行时间或占用内存空间随数据规模的增长关系。 为什么要进行复杂度分析? 借助复杂度分析,有利于编写出性能更优的代码,降低成本。
阅读全文
摘要:递归:直接或间接调用自身算法的过程 满足使用递归的条件: 子问题为同类事物,且更简单 必须有个出口 优点: 代码简洁 符合思维习惯,容易理解 缺点: 效率较低 递归层次太深,耗内存且容易栈溢出一定要使用的话,最好使用缓存避免相同的计算,限制递归调用的次数 原文链接 不算狗血的Java自学经历 Jav
阅读全文
摘要:Executor 英文意思是执行者,可以看出它的作用是提交和执行任务接口,也可以理解为是线程池。 Executor 有一个子接口 ExecutorService,ExecutorService 可以管理和终止任务的方法,可以追踪异步任务的进度的 Executor。 Executors 是线程池的工厂
阅读全文
摘要:spring boot 基于 spring 框架的快速开发整合包。 至于为什么要用,先看下官方解释 好处: 编码变得简单 配置变得简单 部署变得简单 监控变得简单 原文链接 Java 自学经历 Java 面试题 H5 Java 面试题小程序
阅读全文
摘要:Spring Boot 有两种类型的配置文件,application 和 bootstrap 文件 Spring Boot会自动加载classpath目前下的这两个文件,文件格式为 properties 或 yml 格式 *.properties 文件是 key=value 的形式 *.yml 是
阅读全文
摘要:@Autowired 是一个注释,它可以对类成员变量、方法及构造函数进行标注,让 spring 完成 bean 自动装配的工作。 @Autowired 默认是按照类去匹配,配合 @Qualifier 指定按照名称去装配 bean。 常见用法 原文链接 Java 自学经历 Java 面试题 H5 Ja
阅读全文
摘要:@RequestMapping 是一个注解,用来标识 http 请求地址与 Controller 类的方法之间的映射。 可作用于类和方法上,方法匹配的完整是路径是 Controller 类上 @RequestMapping 注解的 value 值加上方法上的 @RequestMapping 注解的
阅读全文
摘要:前端控制器(DispatcherServlet) 处理器映射器(HandlerMapping) 处理器适配器(HandlerAdapter) 拦截器(HandlerInterceptor) 语言环境处理器(LocaleResolver) 主题解析器(ThemeResolver) 视图解析器(View
阅读全文
摘要:1、在 web 项目的 web.xml 文件配置 DispatcherServlet,启动 web 项目完成初始化动作 2、http 请求到 DispatcherServlet 3、根据 HttpServletRequest 查找 HandlerExecutionChain 4、根据 Handler
阅读全文