原创 方法重寫和方法重載兩者之間有何關聯和區別

方法重寫和方法重載兩者有關係嗎?它們的區別在哪裏? 方法重寫 Q.爲什麼需要學習方法重寫? A:父類的功能實現無法滿足子類的需求,需要重寫 方法重寫概述:如果從父類繼承的方法不能滿足子類的需求,可以對其進行改寫,這個過程叫方法的覆

原创 如何實現一個線程安全的單例,在不能加鎖的前提下?

單例模式,屬於創建類型的一種常用的軟件設計模式。通過單例模式的方法創建的類在當前進程中只有一個實例(根據需要,也有可能一個線程中屬於單例,如:僅線程上下文內使用同一個實例)。 單例相信大家都不陌生,它是java中很重要的一個設計模

原创 從源碼看==和equals的區別

==和equals的區別和聯繫 “==”是關係運算符,equals()是方法,同時他們的結果都返回布爾值; “==”使用情況如下: ​ a)基本類型,比較的是值 ​ b)引用類型,比較的是地址 ​ c)不能比較沒有父子關係的兩個對

原创 SQL語句的進階之路

1.sql語句學習 https://www.w3school.com.cn/sql/index.asp 2.sql語句測驗 https://www.w3school.com.cn/sql/sql_quiz.asp 3.sql語句

原创 手把手一步步教你如何簡單輕鬆的搭建SSM框架(經典)

SSM全稱是Spring+SpringMVC+MyBatis。 在我們實際開發過程中,有很多應用框架是要經常去使用的,比如ssh、ssm等,今天來介紹一下ssm這款當下比較主流的企業級框架。在開發一個項目開始,程序員首先要做的就是

原创 從源碼和代碼相結合分析StringBuffer類及擴容原理

StringBuffer類的概念 線程安全的可變字符序列。一個類似於 String的字符串緩衝區,但不能修改。雖然在任意時間點上它都包含某種特定的字符序列,但通過某些方法調用可以改變該序列的長度和內容。 StringBuffer上

原创 非常典型的死鎖

死鎖 死鎖是指兩個或兩個以上的進程在執行過程中,由於競爭資源或者由於彼此通信而造成的一種阻塞的現象,若無外力作用,它們都將無法推進下去。此時稱系統處於死鎖狀態或系統產生了死鎖,這些永遠在互相等待的進程稱爲死鎖進程。 1、定義兩個鎖

原创 java基礎之一:異常

異常概述 異常:異常是指在程序的運行過程中所發生的不正常的事件,它會中斷正在運行的程序。簡單來說就是程序出現了不正常的情況。 異常本質就是java當中對出現的問題進行描述的一種對象體現。 常見的異常: 除數不能爲0異常(Arit

原创 關於integer的面試題

有以下代碼,求各輸出語句的結果是多少? 代碼1 int i1 = 128; Integer i2 = 128; Integer i3 = Integer.valueOf(128); Integer i4 = new

原创 堆排序代碼

堆排序 堆排序代碼如下: public static void main(String[] args) { System.out.println("原數組:"); int[] arr = { 10, 8, 15, 16,

原创 成員變量、類變量和靜態變量三者的區別

實例變量(成員變量) 在類的聲明中,屬性是用變量來表示的。這種變量就稱爲實例變量,是在類聲明的內部但是在類的其他成員方法之外聲明的。 當一個對象被實例化之後,每個實例變量的值就跟着確定; 實例變量在對象創建的時候創建,在對象被銷燬

原创 java基本的數據流總結

1、字節流 (1)字節輸入流 ​ InputStream ​ FileInputStream ☆ ​ BufferedInputStream ☆ (提高效率) (2)字節輸出流 ​ OutputStream