08 2019 档案

摘要:内部排序:在排序期间数据对象全部存放在内存的排序 外部排序:指在排序期间对象太多,不能同时存放在内存中,必须根据排序过程的要求,不断在内、外存间移动。 效率的衡量: 内部排序:比较的次数(即时间复杂度) 外部排序:IO次数 性能比较: 稳定:待排序序列中相同数字的顺序 在 排好序后,顺序不发生改变。 阅读全文
posted @ 2019-08-27 16:25 DDiamondd 阅读(305) 评论(0) 推荐(0)
摘要:public class TestArray { public static void main(String[] args){ // 错误 // int[3] a; //数组本身是一个对象 不可以在对象声明的时候指定长度 int[] a = new int[3]; //在数组初始化的时候需要执行长度 或者给定初始值 ... 阅读全文
posted @ 2019-08-26 09:11 DDiamondd 阅读(180) 评论(0) 推荐(0)
摘要:java.sql.Date 继承 java.util.Date 区别: 1、java.sql.Date 一般用于数据库 2、java.sql.Date 没有时分秒,涉及时分秒的函数都会报异常(且这些方法上面都画了删除线,表示不推荐使用) 阅读全文
posted @ 2019-08-25 11:54 DDiamondd 阅读(249) 评论(0) 推荐(0)
摘要:1、set方式注入(利用反射): 注意: 2、通过构造器注入: 3、p命名空间: 引入p命名空间: xmlns:p="http://www.springframework.org/schema/p" 自动装配: byName:属性 与 bean的id 相同就自动装配 byType:属性 与 bean 阅读全文
posted @ 2019-08-23 10:51 DDiamondd 阅读(1166) 评论(0) 推荐(0)
摘要:真的!讲得太清楚了!https://blog.csdn.net/MingHuang2017/article/details/79571529 真的是解惑了 本文所说的“核心线程”、“非核心线程”是一个虚拟的概念,是为了方便描述而虚拟出来的概念,在代码中并没有哪个线程被标记为“核心线程”或“非核心线程 阅读全文
posted @ 2019-08-16 10:05 DDiamondd 阅读(6315) 评论(1) 推荐(1)
摘要:原文: https://blog.csdn.net/xiong_hui_hui/article/details/51241338 多线程编程要确保并发程序正确地执行,必须要保证原子性、可见性以及有序性,缺一不可,不然就可能导致结果执行不正确。 1. 原子性 即一个操作或者多个操作 要么全部执行并且执 阅读全文
posted @ 2019-08-15 10:35 DDiamondd 阅读(550) 评论(0) 推荐(0)
摘要:https://blog.csdn.net/dhj199181/article/details/90637862 1) 单一职责原则: 一个合理的类,应该仅有一个引起它变化的原因,即单一职责,就是设计的这个类功能应该只有一个; 优点:消除耦合,减小因需求变化引起代码僵化。 2) 开-闭原则: 对扩展 阅读全文
posted @ 2019-08-15 08:53 DDiamondd 阅读(158) 评论(0) 推荐(0)
摘要:http://www.redis.cn/topics/transactions.html 事务可以一次执行多个命令, 并且带有以下两个重要的保证: 事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。 事务是一个原子操作:事 阅读全文
posted @ 2019-08-14 14:59 DDiamondd 阅读(137) 评论(0) 推荐(0)
摘要:大部分摘至:https://www.runoob.com/redis/redis-intro.html Redis是一个开源免费的、使用 C语言 编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。 它通常被称为数据结构服务器,因为值(va 阅读全文
posted @ 2019-08-14 14:08 DDiamondd 阅读(172) 评论(0) 推荐(0)
摘要:cookie: 由服务器产生,在发送给客户端保存,相当于本地缓存(提高了访问服务端的效率,但是安全性较差) 1)在服务端产生cookie: response.addCookie(Cookie cookie) 2)发送通过页面跳转(重定向、请求转发) 3)获取: Cookie[] cookies = 阅读全文
posted @ 2019-08-13 08:14 DDiamondd 阅读(157) 评论(0) 推荐(0)
摘要:原文:https://www.jianshu.com/p/46bd98ea9845 公平锁与非公平锁:https://www.cnblogs.com/DDiamondd/p/11316393.html 自旋锁与阻塞锁: 自旋锁:是指当线程获取锁失败的时候,去执行一个无意义的循环,循环结束后再重新去竞 阅读全文
posted @ 2019-08-08 15:35 DDiamondd 阅读(643) 评论(0) 推荐(0)
摘要:乐观锁:每次不加锁而是假设没有冲突而去完成某项操作,如果因为冲突失败就重试,直到成功为止。 悲观锁:总是悲观的认为某个线程在处理某份资源的时候,会有别的线程来修改资源,所以在资源上加锁,一旦某个线程获取该锁,别的线程想要获取该资源就会阻塞直至获取锁的线程释放该锁(独占锁 synchronzied R 阅读全文
posted @ 2019-08-08 15:30 DDiamondd 阅读(204) 评论(0) 推荐(0)
摘要:参考:https://www.jianshu.com/p/f584799f1c77 公平锁:在获取锁之前会先判断等待队列是否为空或者自己是否位于队列头部,满足条件通过才能继续获取锁。否则就进入等待队列中等待 FIFO 非公平锁:线程在获取锁的时候 直接去尝试获取锁,获取不到就自动到队尾等待()。进入 阅读全文
posted @ 2019-08-07 17:01 DDiamondd 阅读(385) 评论(0) 推荐(0)
摘要:参考:https://www.cnblogs.com/takumicx/p/9338983.html ReentrantLock可重入锁:jdk中独占锁的实现除了使用关键字synchronized外,还可以使用ReentrantLock。虽然在性能上ReentrantLock和synchronize 阅读全文
posted @ 2019-08-07 16:17 DDiamondd 阅读(254) 评论(0) 推荐(0)
摘要:原文:https://www.cnblogs.com/hexinwei1/p/9406239.html 1、程序计数器 PC Register 每个线程都有一个程序计算器,就是一个指针,指向方法区中的方法字节码(下一个将要执行的指令代码),由执行引擎读取下一条指令,是一个非常小的内存空间,几乎可以忽 阅读全文
posted @ 2019-08-06 15:45 DDiamondd 阅读(178) 评论(0) 推荐(0)
摘要:fail-fast: fail-fast(快速失败),是Java集合的一种错误检测机制。当在遍历集合的过程中该集合在结构(改变集合大小)上发生变化时候,有可能发生fail-fast(快速失败行为不能得到保证,点击查看详情),尽最大可能抛出java.util.ConcurrentModificatio 阅读全文
posted @ 2019-08-06 15:00 DDiamondd 阅读(192) 评论(0) 推荐(0)
摘要:下图是来自阿里巴巴java开发手册,里面的例子有些特殊,在后面会有一般的例子,请往后看。 个人理解:在foreach循环里面进行元素的remove/add操作就是:在foreach循环里使用集合本身的remove/add方法, Iterator方式就是使用集合对应的iterator的remove/a 阅读全文
posted @ 2019-08-06 11:18 DDiamondd 阅读(2413) 评论(0) 推荐(0)
摘要:原文: https://blog.csdn.net/wy11933/article/details/80254223 类加载器的作用:通过一个类的全限定名来获取描述此类的二进制字节流,并将此类相关信息加载到JVM的方法区,并创建一个 java.lang.Class 对象作为此类的访问接口, clas 阅读全文
posted @ 2019-08-04 16:14 DDiamondd 阅读(155) 评论(0) 推荐(0)
摘要:原文:https://blog.csdn.net/wy11933/article/details/80254223 1、根据JVM内存配置要求,为JVM申请特定大小的内存空间; JVM启动时按照其配置要求,申请一块内存,并根据JVM规范和实现将内存划分为几个区域。class二进制文件信息被放入“方法 阅读全文
posted @ 2019-08-04 15:55 DDiamondd 阅读(1734) 评论(0) 推荐(0)
摘要:https://www.cnblogs.com/aspirant/p/7200523.html 阅读全文
posted @ 2019-08-04 14:36 DDiamondd 阅读(111) 评论(0) 推荐(0)
摘要:https://blog.csdn.net/ztchun/article/details/79561835 阅读全文
posted @ 2019-08-04 10:14 DDiamondd 阅读(1046) 评论(0) 推荐(0)
摘要:原文:https://www.cnblogs.com/aspirant/p/7200523.html <clinit>() 类构造器方法 在 类初始化阶段 被执行 由编译器自动收集类中的所有类变量的赋值动作和静态语句块static{}中的语句合并产生的,编译器收集的顺序是由语句在源文件中出现的顺序所 阅读全文
posted @ 2019-08-03 16:41 DDiamondd 阅读(239) 评论(0) 推荐(0)
摘要:很全面的一篇文章: https://www.cnblogs.com/aspirant/p/8662690.html System.gc() : https://www.cnblogs.com/xushuyi/articles/9577957.html System.gc() 不一定能立即执行垃圾回收 阅读全文
posted @ 2019-08-03 15:21 DDiamondd 阅读(113) 评论(0) 推荐(0)
摘要:https://blog.csdn.net/michaelgo/article/details/82790253 https://www.jianshu.com/p/f1d68fdd58b6 什么是异常 异常的英文单词是exception,字面翻译就是“意外、例外”的意思,也就是非正常情况。事实上, 阅读全文
posted @ 2019-08-03 10:02 DDiamondd 阅读(187) 评论(0) 推荐(0)
摘要:三者都实现了List接口! Vector与ArrayList:采用顺序存储的方式,但是Vector是线程安全的,ArrayList是线程不安全的,按需使用; 当存储空间不足的时候,ArrayList默认增加为原来的50%,Vector默认增加为原来的一倍即100%(Vector可以设置容量增长参数) 阅读全文
posted @ 2019-08-03 09:24 DDiamondd 阅读(143) 评论(0) 推荐(0)
摘要:【 线程池的作用,Executors创建线程池,常见工作队列】:https://www.jianshu.com/p/6c6f396fc88e 【Exectros方式创建线程池和ThreadPoolExecutor的构造函数创建线程池】:https://blog.csdn.net/hollis_chu 阅读全文
posted @ 2019-08-03 08:50 DDiamondd 阅读(209) 评论(0) 推荐(0)
该文被密码保护。
posted @ 2019-08-03 08:30 DDiamondd 阅读(1) 评论(0) 推荐(0)
摘要:sleep() 属于Thread的方法,不释放锁,自动唤醒或者interrupt打断 wait() 属于Object的方法,释放锁,不会被自动唤醒,用notify() or notifyall()唤醒 notify() / notifyall() 唤醒 任意一个 / 全部 在此对象上等待的线程 Wa 阅读全文
posted @ 2019-08-02 20:12 DDiamondd 阅读(224) 评论(0) 推荐(0)
摘要:属于本地方法 /** * A hint to the scheduler that the current thread is willing to yield * its current use of a processor. The scheduler is free to ignore thi 阅读全文
posted @ 2019-08-02 20:02 DDiamondd 阅读(1016) 评论(2) 推荐(0)
摘要:http://blog.itpub.net/31555134/viewspace-2221319/ 一直对join()方法不是很理解,在A线程中, B线程调用了join()方法,然后在内部实际是wait()方法,但是在效果上是A线程一直在等待,对wait()方法的调用不是很理解。(希望有朋友能够给我 阅读全文
posted @ 2019-08-02 19:36 DDiamondd 阅读(1158) 评论(0) 推荐(0)

TOP