#Java

Java內存模型

<h3 id="java內存模型">Java內存模型</h3> <p><strong>Java內存模型(Java Memory Model,JMM)就是一種符合內存模型規範的,屏蔽了各種硬件和操作系統的訪問差異的,保證了Java程序在各種平台下對內存的訪問都能保證效果一致的機制及規範。</strong></p> <pre tabindex="0"><code>簡要言之,jmm是jvm的一種規範,定

Java類加載機制

<h3 id="java類加載機制">Java類加載機制</h3> <p><strong>類加載機制</strong></p> <p>所謂類加載機制就是JVM虛擬機把Class文件加載到內存,並對數據進行校驗,轉換解析和初始化,形成虛擬機可以直接使用的Java類型,即Java.lang.Class。</p> <p><strong>類的生命週期</strong></p> <p><strong>類的生

Java創建對象的五種方式

<h3 id="java創建對象的五種方式">Java創建對象的五種方式</h3> <p>本文將介紹五種方式來創建一個Java對象:</p> <ul> <li>使用new關鍵字</li> <li>使用Class.newInstance</li> <li>使用Constructor.newInstance</li> <li>使用clone方法</li> <li>使用反序列化</li> </ul>

為什麼Kafka的速度那麼快

<h3 id="為什麼kafka的速度那麼快">為什麼Kafka的速度那麼快</h3> <p>我們都知道Kafka是基於磁盤進行存儲的,但Kafka官方又稱其具有高性能、高吞吐、低延時的特點,其吞吐量動輒幾十上百萬。</p> <p>一般認為在磁盤上讀寫數據是會降低性能的,因為尋址會比較消耗時間,那麼Kafka又是怎麼做到其吞吐量動輒幾十上百萬的呢?</p> <h6 id="kafka的高性能是底層

Java基礎sleep與interrupt

<h3 id="java基礎sleep與interrupt">Java基礎sleep與interrupt</h3> <ol> <li> <p>interrupt用於向線程發終止通知信號,會影響該線程內部的中斷標誌位</p> </li> <li> <p>當前線程本身不會因為interrupt而改變狀態,狀態的具體變化需要等待接收到中斷表示的程序的最終處理結果來判定。</p> </li> <li>

Java基礎wait和sleep的區別

<h3 id="java基礎wait和sleep的區別">Java基礎wait和sleep的區別</h3> <p>1、sleep是Thread中的方法,是靜態方法,wait是Object中的方法,是實例方法。</p> <p>2、sleep主要作用使線程暫停執行一段時間,時間一到自動恢復,不涉及線程通訊,不會去釋放鎖,但是wait會釋放這個鎖,並把這個wait的線程加入到這個鎖的等待隊列中去</p>

volatile和synchronized的區別

<h3 id="volatile和synchronized的區別">volatile和synchronized的區別</h3> <ol> <li> <p>volatile本質是在告訴jvm當前變量在寄存器(工作內存)中的值是不確定的,需要從主存中讀取; synchronized則是鎖定當前變量,只有當前線程可以訪問該變量,其他線程被阻塞住。</p> </li> <li> <p>volatile僅能

Java實現生產者和消費者

<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span

Java語言圖形界面JavaFX編程入門

<pre tabindex="0"><code>import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.layout.StackPane; import javafx.stage.Stage; /** *

Java語言HashMap遍歷的六種方式

<p>我們總共採用六種方式來遍歷HashMap,計算效率的方式採用執行遍歷之前記下時間,遍歷之後記下結束時間,時間差就是遍歷所用的時間。之後比較六種方式的時間的大小,時間差值越小代表效率越高。</p> <div class="highlight"><pre tabindex="0"