原创 Java 判斷一個類是否是另一個類的子孫類

 定義三個類,關係如下 class A {} class B extends A {} class C extends B {} 測試三個方法  instanceof、isInstance、isAssignableFrom 測試代

原创 Oracle VM VirtualBox 從虛擬軟盤加載系統

新建虛擬機: 主要設置:設置型號 一定要刪除這個盤片 點擊註冊後選擇自己的虛擬軟驅。 完成後可以直接啓動。 啓動後界面:   VMware 這個比較簡單

原创 彙編讀取軟盤

3.5 寸軟盤 大小 1.5 M 1 個軟盤有 2 個盤面 起始 0 1 個盤面有 80 個磁道 起始 0 1 個磁道有 18 個扇區 起始 1 1 個扇區有 512 字節 JAVA 對虛擬軟盤進行操作 https://g

原创 加密算法Java

1、加密算法的分類 對稱加密算法:使用一個密鑰,即可加密,也可解密。 非對稱加密算法:使用一對密鑰,公鑰只能加密不能解密,只有私鑰可以用來解密。運算速度不及對稱加密算法。 常見的加密算法: 算法名 分類 是否冪等 目前是否破

原创 Java集合 TransferQueue

線程安全的 transfer(T t) 直接把內容傳遞個消費者,如果沒有消費者將會阻塞 public static void main(String[] args) throws InterruptedException {

原创 BlockingQueue 解決生產者消費者問題

BlockingQueue 是線程安全的,並且在調用 put,take 方法時會阻塞線程。 基於以上特性,可以不加任何鎖解決生產者消費者問題。 public static void main(String[] args) throws

原创 maven 導入 Oracle 驅動出錯

maven 無法導入Oracle驅動的原因是:Oracle 是商用的,Maven 中央倉庫沒有這個資源 解決方法 1. 下載Oracle的驅動包(可以直接在Oracle安裝路徑下的 oracle\product\11.2.0\db

原创 Java 初始化順序

public class ATest { static { System.out.println("this is A static"); } { System.out.pri

原创 java lock 鎖

需要手動釋放鎖 boolean   lock.tryLock(long time, TimeUtil util);  嘗試申請鎖並持續 time , 申請到返回 true void lock.lockInterruptibly() thr

原创 Java 源碼 AccessibleObject

private static void setAccessible0(AccessibleObject obj, boolean flag) throws SecurityException {

原创 Java 傳參時修改參數內容

以下時個人觀點: Java 傳參數傳的是引用,並且是使用 final 修飾了參數。這導致不能將引用指向另一個對象。 public static void main(String[] args) { Map<String, Str

原创 jdk8 indexOf時間複雜度

for (int i = sourceOffset + fromIndex; i <= max; i++) { /* Look for first character. */ if (so

原创 阿拉伯數字轉羅馬數字

最開始想的是當成進制轉,比如說 : 1 -> I, 2 -> II, 5 -> V, 6 -> VI .... public static String intToRoman1(int num) { String[] roma

原创 Android 開發筆記 1.2 Button

mBtn1 = (Button)findViewById(R.id.mBtn1); mBtn1.setOnClickListener(new View.OnClickListener(){ //點擊事件 @Override

原创 Android 開發筆記 1.1 TextView

android:text="hello"   顯示文字 android:textColor="#000000"   android:textSize="24sp"    字體大小使用sp android:ellipsize="end"