Java整理

Java 關於 static 和 Instance 區別:
在Java中 Static 是類別所擁有的,一開程式便被放入記憶體中,而Instance 則是伴隨著物件產生才產生。
public class XX{
    public static int x = 10;
    public int y = x;
    public int z(){
        z = x;
        z = y;
    }
    public static int zz(){
        int zzz = x;
        zzz = y; > error
        return zzz;
    }
}
出現error的原因是因為 y 並非static變數,而一開始也說了,在Instance變數還沒被變成物件前,他是不存在的,因此對於要一開始就存在的static來講,這就成了非法宣告。

也因為他是一開始就存在的,因此在別的class的時候可以不用new 一個新物件就可以使用

如 XX.x 是10
而要用 XX.y 則會需要 XX S = new XX();
S.y;
參考資料:
https://www.inote.tw/java-what-is-static

--------------------------------------------------------
Java 關於 io使用
如果是單字的話 使用 writer 和 reader 讀取
如果非字串的話 InputStream 和 OutputStream來讀取會比較快

同步io 以及 異步io

同步java.io
讀寫io時代碼等待資料返回後才繼續執行後續代碼
代碼編寫簡單,cpu執行效率低

異步java.nio
讀寫io時僅發出請求,然後立刻執行後續代碼

代碼編寫複雜,cpu執行效率高

inputStream OutputStream Reader Write 抽象類
FileInputStream FileOutputStream FileReader FileWrite 實現類
參考資料:
https://juejin.im/post/5dae654e51882568691fb924

--------------------------------------------------------
java File相關
File f = new File(String path);

getPath() , get AbsolutePath() , getCanonicalPath() 都是取得路徑
isFile(); 有無文件
isDirectory 有無目錄


參考資料:
https://juejin.im/post/5dae654e51882568691fb924

--------------------------------------------------------
java Collection 相關
java.util.Collection介面中定義了所有集合最基本的存取方式如上圖:

List:循序索引的串列結構ex:ArrayList、LinkedList
Set:不允許相同物件存在的集合結構ex:HashSet、TreeSet
Map:使用 Key-Value(鍵-值) 方式儲存的結構ex:HashMap、TreeMap
List<type> name
Map<key , type> name

以下說明List
ArraysList 就一般的List

LinkList 效率高於ArrayList

參考資料:
https://andy6804tw.github.io//2017/11/07/java-collection-intro/

https://andy6804tw.github.io//2017/11/08/java-collection-intro-2/
















































































留言

這個網誌中的熱門文章

無法載入檔案或組件 'System.IO.Compression' 或其相依性的其中之一。

MongoDB 入門

javascript 更改屬性及創建標籤