![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
秋招准备
LLLLLin0
自我向博客,记录自己对编程能力培养的一些点滴。
展开
-
秋招准备-算法-位运算(总)
1.对2的指数次方取余--hash的求模实现 一个数n对2的k次方取余,等于对这个数减一做与运算。 n%(2^k) = n & (2^k-1) 所以,在HashMap的源码中,数组的长度不管怎么扩容都要属于2的次方,是因为要确定键值对的桶位时,是用key求出来的hash值,对其长度取余,然后就用到了这个,桶号index = hash & (...原创 2018-03-29 21:09:05 · 221 阅读 · 0 评论 -
秋招准备-后台框架-Mybatis
Mybatis Mybatis是一个支持普通SQL查询,存储过程和高级映射的持久层框架。 Mybatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。 Mybatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的pojo映射成数据库的记录。 简单介绍 1.mybatis-config.xml 在...原创 2018-07-21 22:38:58 · 244 阅读 · 0 评论 -
秋招准备-web-HTTP协议小点总结
1.HTTP协议2.请求响应模型3.URI/URL4.HTTP/HTTPS5.HTTP报文6.请求方法7.状态码8.首部分类9.MIME10.Cookie11.HTTP请求过程12.访问网站全过程1.HTTP协议 HTTP协议,是客户端和服务器端之间数据传输的格式规范,超文本传输协议。2.请求响应模型。 基于HTTP协议,客户端和服务器端之间的数据...原创 2018-07-17 23:12:01 · 252 阅读 · 0 评论 -
秋招准备-Java-并发编程-阻塞队列(五)
1.Queue框架2.生产者消费者模式与阻塞队列3.阻塞队列实现类1.Queue框架 Java的集合类提供了Queue队列的实现,可以分为四个接口来对应相应的队列功能: Queue:普通队列,头出尾进,一般用于满足FIFO先进先出功能。 Deque:双端队列,双端进出,如果需要实现LIFO后进先出的堆栈功能,优先考虑Deque的实现类,而非Stack接口。 Blocking...原创 2018-04-18 18:57:39 · 202 阅读 · 0 评论 -
秋招准备-Java-并发编程-volatile和线程安全类(八)
1.volatile2.线程安全类3.CAS1.volatile 先简单了解一下Java内存模型 1.Java内存模型 和JVM的运行时数据分区相区别,Java的内存模型是用来描述线程工作的(定义程序中各个变量的访问规则)。可以说是一个抽象概念。 其规定,所有变量(数据)存储在主内存中。(这里的变量指非线程私有的实例字段、静态字段、数组元素~) 每个线程有自己的工作内...原创 2018-04-20 14:49:02 · 218 阅读 · 0 评论 -
秋招准备-Java-并发编程-同步工具(七)
1.同步工具1.同步工具(java.util.concurrent包) 1.Semaphore Semaphore是计数信号量。 从概念上讲,Semaphore维护了一个许可集。比方说,定义一个有三个许可的Semaphore,那么在这个许可集下,使用acquire()方法前,会检查许可集,如果许可1,2,3都用了,那么就会阻塞acquire(),直到有一个许可可用,然后获得该许可...原创 2018-04-19 05:05:56 · 249 阅读 · 0 评论 -
秋招准备-Java-并发编程-ThreadLocal(六)
1.结构分析2.源码分析3.使用和实验1.ThreadLocal结构分析 1.ThreadLocal<T> ThreadLocal提供了局部变量,主要是通过这个类,将一些线程需要的,本来可能是各个线程共享的变量(Connection),或者是约定好的初始变量(Integer i=0),变成线程自己的私有变量。 即本来许多线程共享一个数据库连接Connection对象,...原创 2018-04-19 00:44:55 · 438 阅读 · 0 评论 -
秋招准备-Java-并发编程-Executor框架(四)
1.带返回值的线程2.Executor3.线程池作用1.带返回值的线程 1.Callable接口//java.util.concurrent.Callablepublic interface Callable<V>{ V call() throws Exception;} 和Runnable接口相同,然后可以使用return语句,可以抛出异常这点的话,就是在...原创 2018-04-13 04:05:43 · 213 阅读 · 0 评论 -
秋招准备-Java-JVM-内存区域+GC
Tips:1.Java内存区域,5个区域的存储内容,常量池与直接内存。内存区域与内存模型区别JVM栈中存储的局部变量表(基本类型与引用类型)与栈帧JVM栈中抛出异常的情况JVM堆的分区JVM堆的要点(要结合后面的来讲)方法区和常量池-联系字节码与类加载2.对象的分配、布局、访问创建对象的具体流程对象的大小计算引用如何对应到对象实例。3.GC算法3种垃圾收集算法什么对象需要被GC4.常用GC收集器,...原创 2018-04-07 03:19:03 · 288 阅读 · 0 评论 -
秋招准备-Java-并发编程-显式锁Lock(三)
1.Lock接口与其方法,ReentrantLock为实现类2.Condition接口与其方法,组合ReentrantLock实现条件队列3.ReentrantReadWriterLock读写锁1.Lock接口,ReentrantLock实现类//java.util.concurrent.locks.Lock接口public interface Lock { /** * Lock实现提供...原创 2018-04-12 21:09:01 · 336 阅读 · 0 评论 -
秋招准备-Java-并发编程-同步机制与synchronized(二)
1.线程安全的一些概念2.同步简述3.synchronized的使用与说明1.线程安全的一些概念 1.正确性 即某个类的行为与其规范完全一致,意思就是功能不能出错,使用多线程编程在带来性能提高的同时,也会由于多线程之间相互影响而导致的功能出错的情况,因此,线程安全,实际上就是确保,大到程序,小到类的方法的正确性,保证每个功能都按其设计的语义来实现,则可以说线程安全。 ...原创 2018-04-12 05:43:27 · 251 阅读 · 0 评论 -
秋招准备-Java-并发编程-多线程基础(一)
1.线程的五个状态2.线程图3.多线程的实现方式4.Thread常用方法1.线程的五个状态 1.新建:用new实例化一个线程对象。 2.可运行:线程对象创建后,调用start()方法,通知jvm后,等待被线程调度选中。 3.运行:可运行状态的线程被选中后,获得cpu的时间轮片,开始执行run()方法,处于运行状态。 4.阻塞:阻塞状态指线程因某种原因放弃cpu的使用权,暂停...原创 2018-04-12 03:25:14 · 231 阅读 · 0 评论 -
秋招准备-Java-设计模式(总)
1.单例模式 一个类仅有一个实例,并提供它的全局访问点。 1.饿汉单例 线程安全,非Lazy Loading(延迟加载),类加载时就初始化。较为常用。class Singleton{ private static Singleton instance = new Singleton();//初始化可以放到static{}代码块中 private Single...原创 2018-04-04 04:17:24 · 465 阅读 · 0 评论 -
秋招准备-Java-OJ常用方法与类
1.java.util.Scanner构造器: public Scanner(InputStream is) 可选参数System.in,也可用用BufferedInputStream装饰一下,在数据较多的时候稍有优化。方法: boolean hasNext() 用在多组数据时,while的判断处 String next() / int...原创 2018-04-03 01:30:02 · 549 阅读 · 1 评论 -
秋招准备-算法-排序(总)
1.Ques:简单介绍选择排序 选择排序通过在每一轮循环中选择出极值,然后将之与未排序好区域的某个端点作交换,完成一次排序。 比如,第一轮选出最小值,此时的未排序区是0~n-1,则将这个最小值与0号数组元素作交换,完成排序,以此类推,外循环n次之后完成排序。 中间变量:保存每次排序最小值的temp,最小值的索引index。2.Ques:简单介绍插入排序 ...原创 2018-03-29 02:11:33 · 286 阅读 · 0 评论 -
秋招准备-后台框架-Spring
Spring 核心概念1.什么是IoC IoC(Invertion of Control),控制反转,解耦合,轻量级。 具体上可以说,以前我们通过在程序里主动创建对象实例实现组件间的依赖关系,会造成组件间互相耦合。 而IoC将实现组件关系交由外部容器来管理,即由容器在运行期将组件间的某种依赖关系动态注入到组件中。 通俗来讲,以前我们要一个什么东西,...原创 2018-07-22 23:43:48 · 471 阅读 · 0 评论