自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

bozige的专栏

敢问路在何方,路在脚下;攀登高峰,永不止步。

  • 博客(35)
  • 资源 (4)
  • 收藏
  • 关注

转载 分析ReentrantLock之lockInterruptibly

ReentrantLock代码剖析之ReentrantLock.lockInterruptiblyReentrantLock.lockInterruptibly允许在等待时由其它线程调用等待线程的Thread.interrupt方法来中断等待线程的等待而直接返回,这时不用获取锁,而会抛出一个InterruptedException。而ReentrantLock.lock方法不允许Threa

2015-07-15 18:03:06 689

转载 分析ReentrantLock之unlock

下面来看ReentrantLock.unlock,尝试在当前锁的锁定计数即state值上减1,而lock每次把锁定计数加1,这也是为什么lock和unlock必须成对出现,否则锁定计数就不能正常恢复到0,其它线程就不能尝试获取锁/**     * Attempts to release this lock.     *     * If the current th

2015-07-15 18:00:55 549

转载 分析ReentrantLock之lock

ReentrantLock代码剖析之ReentrantLock.lockReentrantLock是java.util.concurrent.locks中的一个可重入锁类。在高竞争条件下有更好的性能,且可以中断。深入剖析ReentrantLock的源码有助于我们了解线程调度,锁实现,中断,信号触发等底层机制,实现更好的并发程序。先来看ReentrantLock最常用的代码lock

2015-07-15 17:56:57 526

原创 面试,一个不对等的双选之路

求职经历:华为(offer),中兴(offer),烽火(offer) 。。。。。。座右铭/心语:面试是一个不对等的双向选择,求职路也是一个不断重新认识自己的过程。 由于各种原因,没有进入梦想已久的公司,但是我会坚持,期待明天。在此分享一下自己的求职感受,帮助需要的童鞋,也在此给自己许下一个承诺。1. 找准方向,有的放矢。计算机专业的同学找工作,大致分为两个方向,研发、测试之

2015-07-15 14:27:28 1936 2

转载 正确使用 Volatile 变量

Java™ 语言包含两种内在的同步机制:同步块(或方法)和 volatile 变量。这两种机制的提出都是为了实现代码线程的安全性。其中 Volatile 变量的同步性较差(但有时它更简单并且开销更低),而且其使用也更容易出错。在这期的 Java 理论与实践 中,Brian Goetz 将介绍几种正确使用 volatile 变量的模式,并针对其适用性限制提出一些建议。Java 语

2015-07-15 13:59:19 560

转载 ConcurrentHashMap探讨

ConcurrentHashMap仔细阅读了一下,博主剖析地不错,分享了。ConcurrentHashMap是Java5中新增加的一个线程安全的Map集合,可以用来替代HashTable。对于ConcurrentHashMap是如何提高其效率的,可能大多人只是知道它使用了多个锁代替HashTable中的单个锁,也就是锁分离技术(Lock Stripping)。实际上,C

2015-07-15 11:25:55 640

转载 程序运行超时处理——JAVA

JAVA中Future类的方法包括get()和cancel()。get()获取数据对象,如果数据没有加载,就会阻塞直到取到数据,而 cancel()是取消数据加载。另外一个get(timeout)操作,表示如果在timeout时间内没有取到就失败返回,而不再塞。代码实现:import java.util.concurrent.Callable;import java.util.

2015-05-19 17:09:59 2318

原创 算法面试题——直方图内最大矩阵

题目:给出一个直方图(如图所示),求出所给直方图中所包含的最大矩阵面积。直方图可以用一个整数数组表示,如上图为[2, 1, 5, 6, 2, 3]。每个直方块的宽度均为1。上图中包含的最大矩阵面积为10。来源:http://www.jiuzhang.com/problem/43/解题思路:如果对于每个直方块,找到从它开始往左边数第一个比它小的,和往右边数第一个比他小的,则可以确定出以该

2015-05-04 10:08:01 1606

原创 Java类加载机制

最近看了Java的类加载机制,在此mark一下。1. 类加载器的种类Java虚拟机中可以安装多个类加载器,系统默认主要有四个类加载器,每个类负责加载特定位置的类:BootStrapClassLoader,ExtClassLoader,AppClassLoader和URLClassLoader。LI另外程序员可以自定义类加载器,自定义的加载器必须继承ClassLoader。类加载器也

2015-04-19 16:11:57 518

原创 Java基础面试题——(6)

题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?   代码实现:public class JavaInterview_6 { public static void main(String[] args) { System.out.println("第1个月兔子的对数

2015-04-16 09:22:21 401

原创 Java基础面试题——(5)

题目:获取两个字符串中最大相同子串。比如: str1 = "abcwerthelloyuiodef“;str2 = "cvhellobnm"。代码实现:public class JavaInterview_5 { public static String getMaxSameString(String src, String sub){ if(src == null

2015-04-15 19:58:30 438 1

原创 Java基础面试题——(4)

题目:输入一个整形数组,数组里有正数也有负数。数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。求所有子数组的和的最大值。要求时间复杂度为O(n)。例如:输入的数组为1, -2, 3, 10, -4, 7, 2, -5,和最大的子数组为3, 10, -4, 7, 2,因此输出为该子数组的和18。代码实现:public class JavaInterview_4 {

2015-04-15 13:46:38 555 1

原创 Java基础面试题——(3)

题目:从键盘分别输入年、月、日,判断这一天是当年的第几天。代码实现:public class JavaInterview_3 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("输入year:"); int

2015-04-15 11:06:35 566

原创 Java基础面试题——(2)

题目:输入两个正整数m和n,求其最大公约数和最小公倍数。代码实现:public class JavaInterview_2 { public static void main(String[] args) { int m = 15; int n = 20; int max = (m > n)? m : n; int min = (m < n)? m : n;

2015-04-15 10:49:39 416

原创 Java基础面试题——(1)

题目:一个数组,让数组的每个元素去除第一个元素,得到的商作为被除数所在位置的新值。代码实现:public class JavaInterview_1 { public static void main(String[] args) { int [] arr = new int[]{5,3,6,9,12,4}; for(int i = arr.le

2015-04-15 10:25:23 501

转载 数据库范式

最近温习了一下数据库范式,看到了下面这篇文章,感觉浅显易懂,这里分享给大家。数据库范式是数据库设计中必不可少的知识,没有对范式的理解,就无法设计出高效率、优雅的数据库,甚至设计出错误的数据库。一、基础概念        实体:现实世界中客观存在并可以被区别的事物。比如“一个学生”、“一本书”、“一门课”等等。值得强调的是这里所说的“事物”不仅仅是看得见摸得着的“东西”,它也可以

2015-04-14 09:19:25 797

转载 Java关键字解析

Java中的关键字Abstract 一个Java语言中的关键字,用在类的声明中来指明一个类是不能被实例化的,但是可以被其它类继承。一个抽象类可以使用抽象方法,抽象方法不需要实现,但是需要在子类中被实现。break 一个Java的关键字,用来改变程序执行流程,立刻从当前语句的下一句开始执行从。如果后面跟有一个标签,则从标签对应的地方开始执行。case Java语言的关

2015-03-19 09:54:57 819

转载 欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2015-03-19 09:54:49 375

转载 HashMap的死循环——JAVA

在淘宝内网里看到同事发了贴说了一个CPU被100%的线上故障,并且这个事发生了很多次,原因是在Java语言在并发情况下使用HashMap造成Race Condition,从而导致死循环。这个事情我4、5年前也经历过,本来觉得没什么好写的,因为Java的HashMap是非线程安全的,所以在并发下必然出现问题。但是,我发现近几年,很多人都经历过这个事(在网上查“HashMap Infinite Loo

2015-03-16 10:08:48 492

原创 处世为人,说易易,说难难——低调做人,高调做事。

待续。。。

2015-01-22 16:29:13 702

原创 面试题35:第一个只出现一次的字符

题目:在字符串中找出第一个只出现一次的字符。如输入“abaccdeff”,则输出‘b’。Java代码实现:public class FirstNotRepeatingChar { public char firstNotRepeatingChar(char [] pString) { if(pString == null) return '\0'; in

2015-01-22 11:28:32 505

原创 面试题38:数字在排序数组中出现的次数

题目:统计一个数字在排序数组中出现的次数。例如输入排序数组{1,2,3,3,3,3,4,5}和数字3,由于3在这个数组中出现了4次,因此输出4。Java代码实现:public class GetNumberOfK { public int getFirstK(int [] data, int length, int k, int start, int end) { i

2015-01-04 13:48:42 451

原创 面试题4:替换空格

题目:请实现一个函数,把字符串中的每个空格替换成“%20”。例如输入“I am Tom”,则输出“I%20am%20Tom”。public class ReplaceBlank { public void replaceBlank(char string[], int length) { if(string == null || length <= 0) return;

2015-01-03 22:33:36 514

原创 面试题47:不用加减乘除做加法

题目:写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。public class Add { public int add(int num1, int num2) { int sum, carry; do { sum = num1 ^ num2; carry = (num1 & num2) << 1; num1 =

2015-01-03 21:25:26 502

原创 面试题10:二进制中1的个数

题目:请实现一个函数,输入一个整数,输出该数二进制表示中1的个数。例如把9表示成二进制是1001,有2位是1。因此如果输入9,该函数输出2。解法一:可能引起死循环public int NumberOf1(int n) { int count = 0; while(n != 0) { if((n & 1) == 1) count ++; n = n

2015-01-02 21:44:07 554

原创 面试题55:字符流中一个不重复的字符

题目:请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符“go”时,第一个只出现一次的字符是‘g’。当从该字符流中读出前六个字符“google”时,第一个只出现一次的字符是‘l’。Java编程实现:public class CharStatistics { private int [] occurence = new int[256]

2014-12-30 16:40:46 579

原创 面试题9:斐波那契数列

题目:写一个函数,输入n,求斐波那契数列的第n项。解法一(递归):效率低下,不太理想。public long Fibonacci(int n) { if(n <= 0) return 0; if(n == 1) return 1; return Fibonacci(n - 1) + Fibonacci(n - 2); }解法二(优

2014-12-30 15:45:27 485

原创 2014年华为面试(提前批)——Java类

每年华为都是我校的招人大户,今年也和往常一样,八月份中下旬如期而至。下面我将把我所经历的面试经验分享给大家,以期望帮助到需要的人。第一轮上机测试:3道编程题,难度依次递增,网上有题库。第二轮心理测试:比较简单,自己怎么想的就怎么选,不要前后矛盾就行。第四轮技术面试:先来一个自我介绍,再问问题,问题如下:1. 临界区概念2. 常见的排序算法3. 哈

2014-12-29 20:26:32 839

原创 2014年CVTE笔试题目(Web后台开发)——Java类

1. 输入一个日期(2014.9.10),输出该日期为当年第几天。2. 输入3个1-5的整数,以空格隔开,按由大到小输出。3. 给出一个矩阵,数值代表坡度,可上下左右走,输出最长路径,滑雪题目。        输入:        5 5        1 3 5 6 7 8        4 6 3 7 9 0        3 7 9 0 2 5   

2014-12-29 20:15:08 2782

原创 单例模式

最近在看《剑指offer》这本书,虽说之前也看过,但是看得比较粗糙,决定重新看过。这本书也是公认的面试宝典,对程序猿找工作大有裨益,本书算法实现大部分是C/C++,也有部分C#代码。本人学习Java的,也能读懂C/C++和C#代码,但是我希望用Java实现一下本书算法,一来可以锻炼一下自己,二来通过比较不同语言实现同一算法的不同之处,体会一下其中奥妙。好吧,下面我们就来学习一下使用Java语言实现

2014-12-26 21:19:22 474

转载 做了一个圣诞节html5游戏,祝大家圣诞节快乐!

http://www.cgame360.com/christmas/    或者在支持html5的浏览器中打开这个链接。

2014-12-26 20:28:56 629

原创 Java版QQ

一、功能介绍刚学习Java的时候,为了练手,找找成就感,学着写了一个简单版QQ。已实现的功能就是简单的文本通信,不过界面倒是不错,用的是现成界面美化库beautyeye。欢迎大家不断丰富。架构图如下所示: 二、界面展示登录界面服务器界面主界面

2014-12-22 11:02:15 1291 1

原创 学车之路

今天,终于拿到本本了,拿到手后左右打量,名字有没有写错啊,照片有没有贴错啊。。。。。。然后神游了几分钟,梦想着自己开着敞篷跑车在路上狂飙,怎一个拉风了得,不由得醉了,直到口水出来,才恍然大悟自己在做梦所,一声叹息后,回到现实吧。 写这篇博客就是为了记住这段经历,以及向大家分享一下自己学车经验,不喜勿喷。我去年9月份报的驾校,11月份考科目一,今年4月份考科目二(5项),12月份考科目三(电

2014-12-21 19:37:44 1168 3

原创 “错误1324,文件夹路径“my documents”中含有无效的字符”

最近,我在安装CAJ 7.0和Adobe_Acrobat_7.0时,总是出现“错误1324,文件夹路径“my documents”中含有无效的字符”。网上类似答案非常多,但是,我的电脑好像并不买账。经过不断尝试,意外的发现能安装了,现在把我的经验分享一下,希望能帮助到各位。解决步骤如下:       1、单击“开始”菜单,在“运行”栏输入“regedit”命令回车,打开注册表;

2013-05-19 10:17:02 8512 2

原创 Android菜鸟笔记

今天,打开Eclipse准备调试一个Android程序,结果发现里面的Android x.x.x和R.java文件不见了。这就奇怪了,关键是我之前都没动过它啊,非常郁闷。但是,总归要解决吧,经过一番折腾,还是搞出来了,现在分享一下,网上也有类似解答,这只是个人经验,勿喷!!!        1、重现Android x.x.x文件,点击Windows->Preferences->Android-

2013-05-16 11:34:56 611 2

Java版QQ数据库文件

Java版QQ数据库文件,导入即可,欢迎下载。

2014-12-22

Java简单版QQ

一个简单版QQ,已实现的功能就是简单的文本通信,不过界面倒是不错,用的是现成界面美化库beauteye。

2014-12-22

java jar包

java各种jar包,种类齐全,欢迎下载!

2012-12-23

java RMI分布式计算(两矩阵相乘)源码

java RMI分布式计算(两矩阵相乘)源码,欢迎下载

2012-12-23

空空如也

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

TA关注的人

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