原创 Java併發——Thread和Runnable

1.什麼是線程? 線程就是一條在程序代碼中獨立執行的路徑。 2.什麼是runnable? 一個runnable就是一段封裝在對象中的代碼序列,它的類實現了Runnable接口。 3.Thread類和Runnable接口完成了什麼? 類Th

原创 Java併發——volatile關鍵字:可見性

(1)volatile是輕量級的synchronized,它在多處理器開發中保證了共享變量的“可見性”,但無法保證“原子性”。 (2)volatile不會引起線程上下文的切換,在使用恰當的情況下,比synchronized的使用和執行成本

原创 Java併發——同步臨界區的訪問:synchronized關鍵字

1.臨界區: 臨界區就是必須以串行方式(一次一條線程)方法的一段代碼塊。 同步是通過監聽器來實現的。每一個Java對象都和一個監聽器相關聯,線程通過獲取和釋放監聽器的鎖來上鎖和解鎖。 2. 使用synchronized關鍵字來串行線程對方

原创 Java基礎——Collection和Collections的區別

來自:https://www.cnblogs.com/cathyqq/p/5279859.html 我們常說的Collections框架中包含了大量集合接口以及這些接口的實現類和操作它們的算法。主要包含兩大接口: Collection

原创 Java基礎——Collections框架

1.Java集合框架圖 Collections框架主要有兩個接口:Collection、Map Collection接口有兩個子接口:List和Set. (List接口允許null,可以重複,具有存儲順序;Set接口允許null,不可以

原创 Java基礎——靜態方法

  本文轉自:https://www.cnblogs.com/dyj-blog/p/8867028.html 1. 序:什麼是靜態工廠方法 在 Java 中,獲得一個類實例最簡單的方法就是使用 new 關鍵字,通過構造函數來實現對象的

原创 Java基礎——String、StringBuilder、StringBuffer

1.共同點 都可以對字符串進行操作。 2.區別 這三個類之間的區別主要是在兩個方面,即運行速度和線程安全這兩方面 (1)運行速度       運行速度快慢爲:StringBuilder > StringBuffer > String   

原创 Java基礎——與時間相關的類

來自:https://www.cnblogs.com/caoyc/p/4546527.html            https://www.cnblogs.com/fulitaiblogs/p/3763155.html 一、Data

原创 Java基礎——數組

1. Java中數組是什麼?數組是不是對象?  數組是指具有相同類型的數據的集合,它們一般具有固定的長度,並且在內存中佔據連續的空間。 在C/C++語言中,數組名只是一個指針,這個指針指向了數組的首元素,既沒有屬性也沒有方法可以調用,而在

原创 Java基礎——字符串

1. 字符串不是基本數據類型,而是一個類 Java沒有內置的字符串類型,而是在標準Java類庫中提供了一個預定義類,叫做String。每個用雙引號括起來的字符串都是String類的一個實例。 2. 字符串的存儲機制  這裏會用到Java虛

原创 Java基礎——靜態變量、成員變量、局部變量

1. 變量的類型 在java語言中,變量的類型有3中:成員變量、靜態變量、局部變量 (1)成員變量 當類被實例化時,成員變量就會在內存中分配空間被初始化,直到這個實例化對象的生命週期結束時,成員變量的生命週期才結束。所以,類的成員變量的作

原创 Java基礎——繼承、多態

1. 面向對象的特徵 我們都知道,java是面向對象的語言,那麼面向對象的有哪些特徵呢? (1)抽象:將客觀事物的共性抽象出來,並將這些屬性歸爲一個類。         包括兩個方面:過程抽象;數據抽象 (2)繼承:一個新類可以從現有的類

原创 Java基礎——java的優點以及與C++的不同

1. Java的優點 Sun Microsystems公司對Java語言的描述:"Java is a simple, object-oriented, distributed, interpreted, robust, secure, a

原创 Java基礎——java程序初始化順序、構造函數

1. Java初始化順序 當實例化對象時,對象所在類的所有成員變量首先要進行初始化,只有當所有類成員完成初始化後,纔會調用對象所在類的構造函數創建對象。 3個原則: (1)靜態對象(變量)優先於非靜態對象(變量)初始化。其中,靜態對象(變

原创 Java基礎——對main方法的理解

1. 對main方法的理解 public static void main(String[ ] args) 爲Java程序的入口。 public: 權限修飾符,表明任何類或對象都可以訪問。 static:“靜態”,表明main方法是一個靜