原创 Java基礎篇:反射入門(上)

反射入門篇幅有點長,但我不想打散了,因爲只看其中一部分也沒啥意義,所以分爲了上中下3篇,寫的不好的方面,希望大家指出 簡介 反射能幹什麼?你只需要給我一個類的地址,我就能知道類的全部信息(類名稱、父類、繼承的接口、方法、屬性、甚至

原创 多線程基礎:線程間的數據傳輸PipedOutputStream和PipedInputStream

PipedOutputStream:繼承OutputStream,很明顯就是對外發送數據的 PipedInputStream:繼承InputStream,用於接收數據的 下面我們看一個例子 首先是發送數據的線程 class S

原创 java I/O基礎:字節流與字符流

簡介 java IO操作中,對數據的傳輸主要是字節流和字符流2種方式,下面我們分別瞭解一下字節流和字符流的操作和優缺點 由於下面4個都是抽象類,所以代碼例子都是使用對應的文件類(FileXXXX)實現的 字節流 顧名思義,就是

原创 IO基礎篇:自動關閉接口AutoCloseable

介紹 在沒有AutoCloseable之前,我調用資源對象,調用完畢後,必須要關閉,否則可能出現資源耗盡的情況 從名字就可以看出,AutoCloseable是一個可以自動保存資源並且關閉資源對象的接口,那麼實現它的類就可以自動關閉

原创 Java基礎:FIle類

簡介 File類,由於I/O很多案例都是用文件作爲例子,所以,我們先了解一下File類 操作 常用文件操作無法就下面幾種情況 路徑分隔符:File.separator,由於不同的操作系統,可能存在分割符號的差異,所以最好使用這個

原创 多線程基礎:爲線程單獨保存數據ThreadLoacl

ThreadLocal 應用場景 當我們多個線程需要對一個公共的變量就行修改,而我們希望這個變量不受其他線程的影響,但我們有不方便所線程同步(線程同步會影響性能),那麼我們可以爲每個線程都設置一個單獨的變量,讓他們自己去修改,此時

原创 java基礎篇:通過接口瞭解java類之CharSequence接口和AutoCloseable接口

我們瞭解了一個接口之後,就能快速的瞭解到它的子類有哪些能力,這樣有助我們快速的瞭解java的基礎類 CharSequence接口 是一個描述字符串結構的接口,在該接口中定義有如下操作方法 JDK1.4之後纔有的 抽查方法:c

原创 JAVA多線程基礎:基礎語法

線程運行速度比進程速度快 實現多線程的3種方案 可以實現Thread類 任何情況下,只要定義了多線程,多線程的啓動永遠只有一種方案,Thread類中的start()方法 內部調用的是strat0(),這是一個JNI實現

原创 Java中平時沒怎麼用,但是比較重要的基礎語法(二)

編譯和打包 類的包名如下 package com.bridge.www //包路徑 無相互引用編譯 “-d”:表示要生成的目錄,而目錄的結構就package "."表示在當前所在目錄中生成程序文件 javac -d

原创 java基礎篇:內部類

使用內部類的目的:可以輕鬆的訪問外部類的私有屬性和方法 普通內部類 外部類也可以輕鬆的訪問內部類的私有成員和方法 創建方式:外部類.內部類 內部類對象 = new 外部類().new 內部類() 編譯完成後,內部類class

原创 java基礎篇:Runtime、System、cleaner、clone等基礎類

Runtime 描述運行時的狀態,也就是說在整個的JVM之中,Runtime類是唯一一個與JVM狀態有關的類,並且都會默認提供有一個默認的該類的實例化對象。 單例模式實現,Runtime.getRuntime() 保存

原创 Java中,平時沒怎麼用,但是比較重要的基礎語法(一)(不是教程,輔助會議)

JShell 以前java程序員都羨慕python的jupyter的方便適用,現在不用了,JDK1.9之後我們也有自己的shell了,安裝JDK1.9以及之後的版本,在命令控制檯中,直接輸入jshell,即可進入shell,突然想

原创 java基礎:多線程的三種實現方式

線程運行速度比進程速度快 第一種:繼承抽象類Thread類 每個線程同一時間只能運行一次,否則就會拋出IllegalTheadStateException()異常 內部是JNI實現(即strat0()方法),JVM根據不同的

原创 多線程下的“高性能類” - “不變模式”

我們知道String的不變性,讓它可以在多線程狀態下發揮高性能的優勢,那我們是否可以將一個類設置爲不變屬性,讓它也可以在多線程下發揮高性能呢?當然可以 前提條件 只有當這個類滿足以下前提,才能設置爲不變模式 當對象創建後,其內部

原创 模式性能優化:上下性能差異大?生產者-消費者模式幫你解決

應用場景? 這個模式,我在做服務器的時候沒有遇到過,但是應用場景很簡單,當上下調用的時候出現很大的性能差異的時候,可以使用這個模式解決,性能差的那方多放幾放幾個線程,中間用一個隊列連接2方的信息傳輸與緩衝,這樣聽起來是不是感覺科學