原创 java面試題

Java基礎方面: 1、作用域public,private,protected,以及不寫時的區別答:區別如下:作用域           當前類       同一package  子孫類       其他packagepublic 

原创 QuickSort

快速排序 Quick Sort 我們已經知道,在決策樹計算模型下,任何一個基於比較來確定兩個元素相對位置的排序算法需要Ω(nlogn)計算時間。如果我們能設計一個需要O(n1ogn)時間的排序算法,則在漸近的意義上,這個排序算法就是最優的

原创 深入理解Java內存模型(二)——重排序

  作者 程曉明 發佈於 一月 26, 2013 | 29 評論 新浪微博 騰訊微博 豆瓣網 Twitter Facebook linkedin 郵件分享 更多 0 稍後閱讀我的閱讀清單 數據依賴性 如果兩個操作訪問同一個變量

原创 Spring 事務管理高級應用難點剖析2

Spring 事務管理高級應用難點剖析: 第 2 部分 陳 雄華, 系統架構師 陳雄華,2002 年畢業於廈門大學計算機與信息工程學院,獲碩士學位。擁有 10 多年的 Java 開發、設計、架構的經驗。技術研發之餘,常將經驗所得行諸

原创 深度解析Java內存的原型及工作原理

深度解析Java內存的原型及工作原理 2012-06-29 13:54 悠虎 比特網 我要評論(2) 字號:T | T 本文主要通過分析Java內存分配的棧、堆以以及常量池詳細的講解了其的工作原理。 AD: 2013大數據

原创 深入理解Java內存模型(七)——總結

  作者 程曉明 發佈於 三月 15, 2013 | 新浪微博 騰訊微博 豆瓣網 Twitter Facebook linkedin 郵件分享 更多 稍後閱讀我的閱讀清單 處理器內存模型 順序一致性內存模型是一個理論參考模型

原创 深入理解Java內存模型(六)——final

  作者 程曉明 發佈於 三月 08, 2013 | 10 評論 新浪微博 騰訊微博 豆瓣網 Twitter Facebook linkedin 郵件分享 更多 0 稍後閱讀我的閱讀清單 與前面介紹的鎖和volatile相比較

原创 深入理解Java內存模型(一)——基礎

    作者 程曉明 發佈於 一月 22, 2013 | 23 評論 新浪微博 騰訊微博 豆瓣網 Twitter Facebook linkedin 郵件分享 更多 82 稍後閱讀我的閱讀清單 併發編程模型的分類 在併發編程中

原创 linux shell command

1、ps:查看進程   2、kill:結束進程   3、sleep:使正在執行的進程在規定時間內進入休眠狀態   4、man:獲取命令的幫助信息 man command 5、pwd:查找自己所在的位置   6、find:在子目錄中搜索匹

原创 淺談java內存模型

淺談java內存模型  不同的平臺,內存模型是不一樣的,但是jvm的內存模型規範是統一的。其實java的多線程併發問題最終都會反映在java的內存模型上,所謂線程安全無非是要控制多個線程對某個資源的有序訪問或修改。總結java的內存模型

原创 Spring 事務管理高級應用難點剖析1

Spring 事務管理高級應用難點剖析: 第 1 部分 陳 雄華, 系統架構師 陳雄華,2002 年畢業於廈門大學計算機與信息工程學院,獲碩士學位。擁有 10 多年的 Java 開發、設計、架構的經驗。技術研發之餘,常將經驗所得行諸

原创 用數組實現堆棧和隊列

package com.sms; /**  *   * @author Administrator  *  */ public class Stack {    public static  int MAX_SIZE=10;    p

原创 深入理解Java內存模型(四)——volatile

  作者 程曉明 發佈於 二月 05, 2013 | 24 評論 新浪微博 騰訊微博 豆瓣網 Twitter Facebook linkedin 郵件分享 更多 0 稍後閱讀我的閱讀清單 volatile的特性 當我們聲明共享

原创 深入理解Java內存模型(五)——鎖

  作者 程曉明 發佈於 三月 05, 2013 | 新浪微博 騰訊微博 豆瓣網 Twitter Facebook linkedin 郵件分享 更多 稍後閱讀我的閱讀清單 鎖的釋放-獲取建立的happens before 關

原创 CountDownLatch Race

import java.util.*; import java.util.concurrent.*; class Race {     private Random rand = new Random();         priva