![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
董小凯
在校学生
展开
-
剑指Java面试-Java常用类库整理(不定期更新!)
剑指Java面试-Java常用类库整理(不定期更新!)文章目录剑指Java面试-Java常用类库整理(不定期更新!)一、Java异常体系1. Error和Exception的区别(Java异常体系)2. 常见Error以及Exception3. Java的异常处理机制4. Java异常的处理原则5. 高效主流的异常处理框架6. try-catch的性能二、Java集合框架1. Java集合框架的...原创 2020-04-08 11:29:48 · 684 阅读 · 0 评论 -
剑指Java面试-Spring整理(不定期更新!)
剑指Java面试-Spring整理(不定期更新!)文章目录剑指Java面试-Spring整理(不定期更新!)一、Spring IoC介绍1. IOC、DI、DL的关系2. 依赖注入的方式3. 依赖倒置原则、IOC、DI、IOC容器的关系4. IOC容器的优势一、Spring IoC容器1.Spring IoC支持的功能2. Spring IoC容器的核心接口BeanDefinitionBeanD...原创 2020-04-08 11:20:16 · 1038 阅读 · 0 评论 -
剑指Java面试-GC整理(不定期更新!)
剑指Java面试-GC整理(不定期更新!)文章目录剑指Java面试-GC整理(不定期更新!)一、对象被判定为垃圾的标准1. 引用计数算法2. 可达性分析算法二、垃圾回收算法1. 标记-清除算法(Mark and Sweep)2. 复制算法(Copying)3. 标记-整理算法(Compacting)4. 分代收集算法(Generational Collector)5. jdk所采用的收集算法GC...原创 2020-04-08 11:14:02 · 533 阅读 · 0 评论 -
剑指Java面试-Java 多线程与并发整理(不定期更新!)
剑指Java面试-Java 多线程与并发整理(不定期更新!)文章目录剑指Java面试-Java 多线程与并发整理(不定期更新!)一、进程和线程的区别1. 进程和线程的由来:2. 进程和线程的区别3. Java线程的进程的区别二、Java多线程常见面试题1. start()与run()的区别2. Thread和Runnable的关系3. 如何给run()方法传参4. 如何处理线程的返回值5. 线程...原创 2020-04-08 11:07:55 · 529 阅读 · 1 评论 -
Java线程池
线程池为什么要用线程池如果有大量的任务需要并发执行,但是每个任务只需要执行很短的时间就执行完成,这样就会频繁的创建->销毁线程,这样反而会浪费系统资源。那么有没有一种办法可以让线程执行完一个任务后,不进行销毁而是转去执行其它未完成的任务,这样就可以实现线程复用,而不用频繁的创建销毁线程,把时间、资源都浪费了。这种方法就是线程池。线程池所带来的好处降低资源消耗。 通过重复利用已创建...原创 2019-10-24 21:54:12 · 1583 阅读 · 0 评论 -
剑指Java面试-JVM整理(不定期更新!)
一、谈谈你对Java的理解平台无关性面向对象GC类库语言特性异常处理二、平台无关性如何实现Java可分为:编译时运行时1.javap 指令javap是jdk自带的反解析工具。它的作用就是根据class字节码文件,反解析出当前类对应的code区(汇编指令)、本地变量表、异常表和代码行偏移量映射表、常量池等等信息。语法:javap <options> &...原创 2020-03-14 09:40:25 · 385 阅读 · 2 评论 -
Java内存区域
Java内存区域1.运行时数据区域Java 虚拟机在执行 Java 程序的过程中会把它管理的内存划分成若干个不同的数据区域。程序计数器虚拟机栈本地方法栈Java堆方法区( 运行时常量池)直接内存站在线程的角度看:Java堆与方法区是所有线程共享的程序计数器、虚拟机栈、本地方法栈是线程私有的1.1程序计数器程序计数器是一块较小的内存空间,可以看作是当前线程所执行的...原创 2019-11-07 13:48:52 · 1567 阅读 · 0 评论 -
Active MQ中的请求-响应模式(Request-Response)在Spring与Spring Boot中的应用
**客户端必须告知服务发送回复消息的位置,并且必须将回复消息与请求匹配**。 客户端发送具有**回复通道头部**的命令式消息。服务端将回复消息写入回复通道,该回复消息包含与消息标识符具有相同值得**相关性ID**。客户端使用相关性ID将回复消息与请求进行匹配。注:请求-响应模式并不是JMS规范系统默认提供的一种通信方式。原创 2020-02-27 21:32:00 · 2142 阅读 · 1 评论 -
GitHub更改项目的语言设置
只需要在项目的根目录上创建一个**.gitattributes**文件。在文件中添加相应的转换格式:`*.xxx linguist-language=ooo`上述转换代码的意思是,将**后缀为xxx的文件都识别为ooo语言**。原创 2020-02-23 11:00:41 · 2540 阅读 · 0 评论 -
Java位运算
位运算1、原码, 反码, 补码 对于一个数,计算机要使用一定地编码方式进行存储,原码、反码、补码是机器存储一个具体数字的编码方式。原码,反码,补码的产生过程,就是为了解决,计算机做减法和引入符号位(正号和负号)的问题。1.1 机器数一个数在在计算机中的二进制表示形式, 叫做这个数的机器数。机器数是带符号的,在计算机用一个数的最高位存放...原创 2019-11-07 13:47:34 · 1816 阅读 · 0 评论 -
单例模式的多种实现
单例模式单例模式来确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例,这个类称为单例类,它提供全局访问的方法。单例模式确保一个类只有一个实例,并提供一个全局访问点。单例模式是一种对象创建型模式。单例模式又被称为单件模式或单态模式。单例模式的要点有三个:某个类只能有一个实例必须自行创建这个实例必须自行向整个系统提供这个实例单例模式的经典实现public cl...原创 2019-10-24 21:55:06 · 1616 阅读 · 0 评论 -
String、String Buffer、String Builder有啥子区别?
String、String Buffer、String Builder有啥子区别?jdk 1.8StringString类 是我们平时用的最多的一个类,它提供了构造和管理字符串的各种基本逻辑。public final class String implements java.io.Serializable, Comparable<String>, CharSequ...原创 2019-10-10 13:53:15 · 1900 阅读 · 0 评论 -
Java 垃圾收集器与内存分配策略
垃圾收集器与内存分配策略 Java内存运行时区域的各个部分,其中程序计数器、虚拟机栈、本地方法栈3个区域随线程而生,随线程而灭,栈中的栈帧随着方法的进入和退出而有条不紊地执行着出栈和入栈操作。 每一个栈帧中分配多少内存基本上是在类结构确定下来就已知的,因此这几个区域的内存分配和回收都具备确定性,在这几...原创 2020-02-22 19:15:39 · 1634 阅读 · 0 评论 -
class 类文件结构与字节码指令
任何一个Class文件都对应着唯一一个类或接口的定义信息,但反过来说,Class文件实际上它并不一定以磁盘文件的形式存在。原创 2020-02-22 19:11:03 · 1709 阅读 · 0 评论 -
Java 类加载过程 与 类加载器(双亲委派模型)
类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(Initialization)、使用(Using)和卸载(Unloading)7个阶段。其中验证、准备、解析3个部分统称为连接(Linking)。原创 2020-02-22 19:07:39 · 1703 阅读 · 0 评论 -
Java并发编程基础概念
如果多个线程对同一个数据进行“读取---修改---写入”的操作序列的话,如果对这个共享变量的操作没有进行同步的话,在多次调用中可能会导致严重的数据完整性问题。在这里引出竞态条件的定义:>由于不恰当的执行时序而出现不正确的结果,这种情况被称为竞态条件。原创 2020-02-22 16:55:33 · 1647 阅读 · 0 评论 -
Java多线程基础&线程间的协作与共享
+ 从多线程基础,首先整理了Thread类、Runnable接口、Callable接口,然后说明了一下三者的使用步骤与区别。+ 然后又从优先级,守护线程,中断线程等角度整理了一下。+ 还有线程间的共享+ 线程间的协作+ 线程的状态与生命周期如果仔细读完!真的。。。会。。。其实这只是Java并发的开始。。哭/(ㄒoㄒ)/~~原创 2020-02-22 16:53:41 · 2116 阅读 · 0 评论 -
Fork/Join 框架 & CountDownLatch与CyclicBarrier
整理了一下几个并发工具类1. Fork/Join 框架的使用范式2. CountDownLatch 的使用3. CyclicBarrier的使用,以及与CountDownLatch 的区别4. Semaphore 与 Exchanger5. 再谈了谈Callable接口与Future的使用原创 2020-02-22 16:51:41 · 1938 阅读 · 0 评论 -
CAS与Auomic原子类
一个CAS涉及到以下操作:>我们假设内存中的原数据V,旧的预期值A,需要修改的新值B。>1. 比较 A 与 V 是否相等。(比较)>2. 如果比较相等,将 B 写入 V。(交换)>3. 返回操作是否成功。原创 2020-02-22 16:49:27 · 1765 阅读 · 0 评论 -
&与&&的区别,|与||的区别,==与equals区别
&与&&的区别,|与||的区别,==与equals区别一、&与&&的区别&运算符有两种用法:(1)按位与;(2)逻辑与。&&运算符是短路与运算。1、最终结果一样。2、&无论左边是false还是true,右边都执行。3、&&具有短路效果,左边是false,右边不执行。4、&&...原创 2020-02-19 11:35:19 · 1957 阅读 · 0 评论 -
SpringBoot 统一异常处理
SpringBoot 统一异常处理(1)统一格式首先我们需要定义错误页面的统一格式:@Datapublic class ResponseData { private Boolean status = true; private int code = 200; private String message = ""; private Object data;}@Data ...原创 2020-01-19 21:10:07 · 1643 阅读 · 0 评论 -
SpringBoot 读取配置文件
SpringBoot 读取配置文件Spring Boot 中的配置通常放在application.properties中,读取信息非常方便,可分为三种方式。(application.yml也是一样的。)(1)Environment:可以通过Environment的getProperty()方法来获取想要的信息。@RestControllerpublic class HelloCo...原创 2020-01-18 22:18:04 · 1554 阅读 · 0 评论