自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

MonkeyITBoy的博客

一个正在奋斗的无名小卒

  • 博客(10)
  • 收藏
  • 关注

原创 i++线程安全问题

Q:i++是线程安全的吗?A:如果是局部变量,那么i++是线程安全。     如果是全局变量,那么i++不是线程安全的。理由:如果是局部变量,那么i++是线程安全:局部变量其他线程访问不到,所以根本不存在是否安全这个问题。    如果是全局变量,那么i++不是线程安全的:当它是全局变量时,所有线程都可以访问,那么,当有1000个线程同时执行i++操作时,i变量的副本拷贝到每个线程的线程栈,当同时有...

2018-04-26 00:40:33 2417

原创 一波京东面经

为自己攒人品京东一面40分钟自我介绍谈项目负责的模块SpringIOC  AOP 以及两个动态代理区别maven打包的过程hashmap同步的几种方法ConcurrentHashmap怎么实现的同步?平时用什么数据结构?讲讲b+树,b+树的好处数据库里的乐观锁悲观锁,怎么写?对项目的优化(然后我就开始说数据库优化)redis数据类型,持久化方式,和mysql的区别jvm内存结构和内存模型垃圾收集器...

2018-04-26 00:35:37 494

原创 防止单例模式被破坏

总结了两种方法,如果还有别的方法的话,欢迎博友补充一、反射机制的引入来破坏单例模式下面是一个单例类,我们通过反射机制生成该类的一个实例public class Singleton { public static final Singleton INSTANCE = new Singleton(); private Singleton() { } public Sin...

2018-04-20 15:02:16 607

转载 初识装饰器模式

转自www.runoob.com/design-pattern/decorator-pattern.html装饰器模式装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。这种模式创建了一个装饰类,用来包装原有的类,并在保持类方法签名完整性的前提下,提供了额外的功能。我们通过下面的实例来演...

2018-04-16 23:17:29 136

原创 八大排序之堆排序

堆排序法(直接选择排序的改进):将排序码k1,k2,k3,...,kn表示成一棵完全二叉树,然后从第n/2个排序码开妈筛选,使由该结点组成的子二叉树符合堆的定义,然后从第n/2-1个排序码重复刚才操作,直到第一个排序码止,这时候,该二叉树符合堆的定义,初始堆已经建立。        接着,可以按如下方法进行堆排序:将堆中第一个结点(二叉树根结点)和最后一个结点的数据进行交换(k1与kn),再将k1...

2018-04-16 00:53:04 298

转载 单例模式详解

单例模式单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。注意: 1、单例类只能有一个实例。2、单例类必须自己创建自己的唯一实例。3、单例类必...

2018-04-15 17:42:03 157

原创 线程创建的三种方式

Java中创建线程主要有三种方式:一、继承Thread类创建线程类(1)定义Thread类的子类,并重写该类的run方法,该run方法的方法体就代表了线程要完成的任务。因此把run()方法称为执行体。(2)创建Thread子类的实例,即创建了线程对象。(3)调用线程对象的start()方法来启动该线程。[java] view plain copy print?00001. package com....

2018-04-13 00:30:31 328

原创 八大排序之希尔排序

package com.eight.paixu;/* * 希尔排序法:希尔排序(ShellSorting)又称为“缩小增量排序”。 * 该方法的基本思想是:先将整个待排元素序列分割成若干个子序列(由相隔某个“增量”的元素组成的)分别进行直接插入排序,待整个序列中的元素基本有序(增量足够小)时,再对全体元素进行一次直接插入排序。 * 希尔排序:分组交换的思想,先分组,后交换排序 属于交换...

2018-04-13 00:27:42 247

原创 八大排序之快速排序

package com.eight.paixu;/* * 快速排序:递归算法,将较大的一组换到后面去,较小的一组在前面,前面和后面的分别再递归调用      * 属于交换类排序      * 不稳定的排序算法 :如35512第一轮时前面的5和后面的2换位置,后面的5和1换位置,位置顺序被破坏      * 平均时间复杂度O(n*log2n)      * 最坏时间复杂度O(n*n) ...

2018-04-13 00:26:55 187

原创 八大排序之选择排序

package com.eight.paixu;/*  * 选择排序—简单选择排序(Simple Selection Sort)  *   *  *在要排序的一组数中,选出最小(或者最大)的一个数与第1个位置的数交换;然后在剩下的数当中再找最小(或者最大)的与第2个位置的数交换,依次类推,直到第n-1个元素(倒数第二个数)和第n个元素(最后一个数)比较为止。 */public cl...

2018-04-13 00:25:09 158

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除