Time of Update: 2018-12-07
多線程下要注意的地方:1. this.wait()和this.notify()要成對使用;2. 對於sychronized要謹慎. 上鎖/不上鎖要謹慎考慮. 用了可能會在效率上下降, 不用可能導致不可預測的結果值.3. wait 和 thread.sleep()有很大差別: wait是object類中的方法, 而sleep是thread下的方法. wait表示指的是當前的線程進行wait... 而sleep是認為的控制等待等待多少時間後再執行. 4. 線程建立有兩種方法1: class
Time of Update: 2018-12-07
TCPServer.java: import java.net.*; // TCP/IP Socket編程所用包import java.io.*; public class TCPServer{ public static void main( String[] args ) throws Exception { ServerSocket ss = new ServerSocket(6666); // 新申請一個sever的連接埠,
Time of Update: 2018-12-07
事件:MouseEvent/ KeyEvent等等. 對於一個frame要addMouseListener( 你定義的監聽事件) 例如: class Monitor extends MouseAdapter.. 再實現對應的操作. 查API文檔在對應的frame類中, 定義paint.. paint的作用就是繪製. 自動繪製, 當視窗被覆蓋等等..時候再出現時候會重繪製paint會一直被調用的, 甚至是點擊滑鼠等 可以把graphics 看做是一支畫筆,
Time of Update: 2018-12-07
作者:Vamei 出處:http://www.cnblogs.com/vamei
Time of Update: 2018-12-07
文章目錄 不可變對象 作者:Vamei 出處:http://www.cnblogs.com/vamei 歡迎轉載,也請保留這段聲明。謝謝! 之前的Java基礎系列中討論了Java最核心的概念,特別是物件導向的基礎。在Java進階中,我將對Java基礎進行補充,並轉嚮應用層面。 大部分程式設計語言都能夠處理字串(String)。字串是有序的字元集合,比如"Hello
Time of Update: 2018-12-07
一. 異常的定義在《java編程思想》中這樣定義 異常:阻止當前方法或範圍繼續執行的問題。雖然java中有異常處理機制,但是要明確一點,決不應該用"正常"的態度來看待異常。絕對一點說異常就是某種意義上的錯誤,就是問題,它可能會導致程式失敗。之所以java要提出異常處理機制,就是要告訴開發人員,你的程式出現了不正常的情況,請注意。記得當初學習java的時候,異常總是搞不太清楚,不知道這個異常是什麼意思,為什麼會有這個機制?但是隨著知識的積累逐漸也對異常有一點感覺了。舉一個例子來說明一下異常的用途。
Time of Update: 2018-12-07
package concurrent;import java.util.ArrayList;import java.util.List;import java.util.concurrent.Callable;import java.util.concurrent.ExecutionException;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;import
Time of Update: 2018-12-07
package org.ifocus.crawler.main;import java.io.BufferedInputStream;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream;import java.util.Enumeration;import java.util.Iterator;import java.util.List;import
Time of Update: 2018-12-07
package test;import org.apache.commons.lang.StringUtils;public class CutString {//效能最差public String testPlus() {String s = "";for (int i = 0; i < 10000; i++) {s = s + String.valueOf(i);}return s;}//較好public String testConcat() {String s = "";for (
Time of Update: 2018-12-07
如何使用Unsafe類呢?方式一:通過Unsafe提供的Factory 方法。Unsafe unsafe = Unsafe.getUnsafe(); 通過這樣的方式獲得Unsafe的實力會拋出異常資訊,因為在unsafe的源碼中會有對安全性的檢查public static Unsafe getUnsafe() { Class cc = sun.reflect.Reflection.getCallerClass(2); if (cc.getClassLoader() !
Time of Update: 2018-12-07
在面試可能經常被問到,介面有什麼作用?相對於類而言,為何需要用類實現介面等等諸如此類的問題。如果不仔細想想,有時候還會卡住。這篇文章將簡單介紹下介面的作用。 對於介面而言,就是用來標記類的一個產物。每個介面都對應有一個或多個實現它的類,否則這個介面就成為冗餘代碼。因為管理介面比管理類要簡單挺多,介面就由此體現了抽象的觀點。換句話說,介面就是沒有屬性和行為實現的類。類實現多個介面,可以解決類不能繼承多個類的機制。那麼介面該怎麼使用呢? 一 介面的作用 下面有兩個方面: 1.
Time of Update: 2018-12-07
java求兩個集合的交集和並集 java如何求兩個集合的交集和並集呢??其實java的API中已經封裝了方法。今天寫個簡單的例子測試一下:(例子中以java.util.LinkedList為例) 求連個集合的交集:import java.util.ArrayList;import java.util.List;public class TestCollection {public static void main(String[] args)
Time of Update: 2018-12-07
前面發了幾篇學習筆記,但是看這些東西總是感覺很"玄乎",來一篇實戰的東西來揭一下"JVM"的面紗,讓"SSH"時代的童鞋們來熟悉一下Java的"老祖爺"JVM。由於自己的水平有限,所以大家在看過程中發了什麼問題,或者您有什麼疑問請及時提出來,我及時解決。如果您有什麼建議,那麼更好大家一塊討論。 1. 源碼檔案public class LearningClassFile {//普通變數private int id1;//靜態變數private static int
Time of Update: 2018-12-07
作者:Vamei 出處:http://www.cnblogs.com/vamei 歡迎轉載,也請保留這段聲明。謝謝!
Time of Update: 2018-12-07
作者:Vamei 出處:http://www.cnblogs.com/vamei
Time of Update: 2018-12-07
文章目錄 引用的賦值 作者:Vamei 出處:http://www.cnblogs.com/vamei 歡迎轉載,也請保留這段聲明。謝謝! 我們之前一直在使用“對象”這個概念,但沒有探討對象在記憶體中的具體儲存方式。這方面的討論將引出“對象引用”(object reference)這一重要概念。 對象引用我們沿用之前定義的Human類,並有一個Test類:public class Test{ public static void
Time of Update: 2018-12-07
作者:Vamei 出處:http://www.cnblogs.com/vamei
Time of Update: 2018-12-07
作者:Vamei 出處:http://www.cnblogs.com/vamei
Time of Update: 2018-12-07
作者:Vamei 出處:http://www.cnblogs.com/vamei 歡迎轉載,也請保留這段聲明。謝謝! 我們之前使用類創造新的類型(type),並使用繼承來便利我們建立類的過程。我將在這一講中深入類型,並介紹多態(polymorphism)的概念。 類型檢查Java的任意變數和引用經過型別宣告(type declaration),才能使用。我們之前見過對象資料、類資料、方法參數、方法傳回值以及方法內部的自動變數,它們都需要聲明其類型。Java是一種強型別(strongly
Time of Update: 2018-12-07
作者:Vamei 出處:http://www.cnblogs.com/vamei 歡迎轉載,也請保留這段聲明。謝謝! 在之前的講解中,我們用對象(object)指代某一事物,用類(class)指代某一類型的對象。對象可以有狀態和動作,即資料成員和方法。到現在為止,資料成員和方法都是同時開放給內部和外部的。我們可以在對象內部,利用this來調用對象的資料成員和方法。當我們在另一個類中調用對象的時(也就是在外部時),可以使用 對象.資料成員 和 對象.方法()