Time of Update: 2015-04-18
標籤: 異常處理概述檢查異常:檢查異常通常是使用者錯誤或者不能被程式員所預見的問題。(cheched)運行時異常:運行時異常是一個程式在運行過程中可能發生的、可以被程式員避免的異常類型。(Unchecked)RentimeExeption錯誤:實際上,錯誤根本不是異常,但卻是使用者或程式員所無法控制的問題。異常是程式在執行過程中所產生的問題。JVM發生了記憶體溢出等。。。異常處理:method()方法有三種1 捕獲這個異常,不讓他沿著調用棧繼續向下拋出2 捕獲這個異常,並繼續向下拋出3
Time of Update: 2015-04-18
標籤: 希爾排序的誕生是由於插入排序在處理大規模數組的時候會遇到需要移動太多元素的問題。希爾排序的思想是將一個大的數組“分而治之”,劃分為若干個小的數組,以 gap 來劃分,比如數組 [1, 2, 3, 4, 5, 6, 7, 8] ,如果以 gap = 2 來劃分,可以分為 [1, 3, 5, 7] 和 [2, 4, 6, 8] 兩個數組(對應的,如 gap
Time of Update: 2015-04-18
標籤: 冒泡排序是一種簡單的排序演算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。這個演算法的名字由來是因為越小的元素會經由交換慢慢“浮”到數列的頂端。 實現方法最簡單,兩層 for 迴圈,裡層迴圈中判斷相鄰兩個元素是否逆序,是的話將兩個元素交換,外層迴圈一次,就能將數組中剩下的元素中最小的元素“浮”到最前面,所
Time of Update: 2015-04-18
標籤: 歸併排序採用的是遞迴來實現,屬於“分而治之”,將目標數組從中間一分為二,之後分別對這兩個數組進行排序,排序完畢之後再將排好序的兩個數組“歸併”到一起,歸併排序最重要的也就是這個“歸併”的過程,歸併的過程中需要額外的跟需要歸併的兩個數組長度一致的空間,比如需要規定的數組分別為: [3, 6, 8, 11] 和 [1, 3, 12,
Time of Update: 2015-04-18
標籤: (轉載出處) 選擇排序的基本思想是遍曆數組的過程中,以 i 代表當前需要排序的序號,則需要在剩餘的 [i…n-1] 中找出其中的最小值,然後將找到的最小值與 i 指向的值進行交換。因為每一趟確定元素的過程中都會有一個選擇最大值的子流程,所以人們形象地稱之為選擇排序。 選擇排序是一種簡單直觀的排序方法,每次尋找序列中的最小值,然後放在最末尾的位置。 舉個執行個體來看看:初始: [38, 17, 16, 16,
Time of Update: 2015-04-18
標籤:java 程式開發 程式員 一、java中的四種引用簡介1、強引用:建立對象的引用,GC拋出OOM也不回收記憶體2、軟引用:在OOM之前回收記憶體3、弱引用:在GC發現之後釋放記憶體4、虛引用(幽靈引用):使用後就釋放二、軟引用的使用1、用途:軟引用是主要用於記憶體敏感的快取,在jvm報告記憶體不足之前會清除所有的軟引用,這樣以來gc就有可能收集軟可及的對象,可能解決記憶體吃緊問題,避免內
Time of Update: 2015-04-18
標籤: 線程:代碼執行的一個分支 主要作用是提高了效率,cpu能同時執行多個部分的代碼。 線程的建立:兩種方式 a.繼承於thread類,重寫run方法。
Time of Update: 2015-04-18
標籤:Java web項目引用java項目,類型找不到錯誤資訊:java.lang.ClassNotFoundException: org.codehaus.jackson.map.ObjectMapper at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1305) at
Time of Update: 2015-04-18
標籤:java 事件 處理機制 java事件處理機制事件的相關資訊被封裝在一個事件對象中(一個參數),事件來源將這個時間對象分發到它的所有監視器中,並有監視器對事件作出反應。AWT時間處理機制監聽器物件建構出一個執行個體,這個執行個體實現了監聽器介面事件來源是一個對象執行個體,這個執行個體可以註冊(添加)監聽器,並發送事件(事件發送到監聽器)事件發生時,事件來源將發送到所有被添加進事件來源的監視
Time of Update: 2015-04-18
標籤:swing java 使用者組件 Swing 使用者介面組件一種模式:模型----視圖-----控制器模式有很多種,例如:模型----視圖----控制器(原則為限制一個對象擁有的功能數量);組合模型--容器和組件之間;裝飾器模式----帶捲軸的面板;策略模式-----布局管理器內容---外觀----行為----MVC模型與視圖之間關係 1:n
Time of Update: 2015-04-18
標籤:java 程式開發 開發人員 記憶體 最佳化 1、使用final 在jdk裡面的String類型是final的,所以String裡面的方法也是final的,方法申明成final後java編譯器會尋找機會內聯所有的final方法(至於怎樣內聯由編譯器決定),這樣可以大大提高程式的運行效能。
Time of Update: 2015-04-18
標籤:記憶體 java 程式開發 程式員 記憶體泄露 一、到期引用導致的記憶體泄露注意:當對象不使用後將對象設定為null,這個時候虛擬機器不一定釋放該記憶體,至於什麼時候釋放由記憶體回收演算法確定。當對象不在使用時,而不回收有可能出現記憶體泄露的問題。在Effective Java裡面有一條建議,消除到期的對象引用。執行個體:
Time of Update: 2015-04-18
標籤:1.synchronized關鍵字/** * 同步關鍵字 * @author tomsnail * @date 2015年4月18日 下午12:12:39 */public class SyncThreadTest { private static final byte[] lock = new byte[1]; /** * 同步方法 * @author tomsnail * @date 2015年4月18日 下午12:15:30 */
Time of Update: 2015-04-18
標籤: package lia.meetlucene;import java.io.IOException;import java.util.ArrayList;import java.util.Arrays;import java.util.List;import java.util.regex.Matcher;import java.util.regex.Pattern;public class XMLReaderTest { public static
Time of Update: 2015-04-18
標籤: 1.單個xml檔案package lia.meetlucene;import java.io.*;import javax.xml.parsers.DocumentBuilder;import javax.xml.parsers.DocumentBuilderFactory;import org.w3c.dom.Document;import org.w3c.dom.Element;import org.w3c.dom.NodeList;public class
Time of Update: 2015-04-18
標籤:錯誤資訊項目背景:一個web項目引用一個java Project,項目中添加了引用,但是開啟頁面訪問,總報500錯誤。提示:servlet初始化錯誤。 環境:Eclipse lunaJDK: 1.7Tomcat: 8.0 HTTP Status 500 - Servlet execution threw an exception type Exception reportmessage Servlet execution
Time of Update: 2015-04-18
標籤:1、認識線程a) 對於線程來說,容易混淆的還有進程,我們用一個例子來區分它們,每次開啟一個word文檔,這就是一個進程,一個word中的拼字檢查這是一個線程,再如每登陸一個QQ,這是一個進程,QQ中的每一個會話都是一個線程。b)對於只有一個CPU的電腦來說,一個時間點只有一個進程佔用CPU2、Java中如何?線程Java中實現多線程可以採用:繼承Thread類,或,實現Runnable介面a)繼承Thread類,這個方式必須覆寫run()方法class 類名稱 extends
Time of Update: 2015-04-18
標籤:java 遊戲 2048 昨天晚上鹹的,想自己做個2048試試,折騰到半夜算是有點成果,分享下,由於搞的太晚也沒來得及加註釋,最後也沒有最佳化重構,就簡單看下思路吧先看個拼圖的小遊戲消化下import java.io.IOException;/** * 控制台玩拼圖遊戲 * @author c * 碼農扣扣群:2177712 */public class Puzzle {static
Time of Update: 2015-04-18
標籤:開發軟體時,我的主要目標之一是:要麼防止將缺陷引入程式碼程式庫,要麼限制缺陷的生存期;換言之,要儘早找到缺陷。很顯然,越是瞭解如何編寫更好的代碼以及如何有效測試軟體,就越能及早地捕捉到缺陷。我也很想要一張能發現潛在缺陷的安全之網。得出了這樣的結論:將檢驗工具整合到構建過程(例如,使用 Ant 或 Maven)中,能夠建立起一種尋找潛在缺陷的方法。儘管這種方法使一致性成為可能並超越了 IDE,但它也有一點反作用。必須在本地構建軟體或等待 Continuous Integration
Time of Update: 2015-04-18
標籤:在官網上下載與作業系統對應的JDK(http://www.oracle.com/index.html)比如我的安裝路徑是E:\jdk1.7.0_51\JDK右擊電腦---->屬性---->進階系統設定---->進階---->環境變數在系統變數中的建立一個環境變數,變數名為JAVA_HOME,變數值為E:\jdk1.7.0_51\JDK在Path環境變數的最前面添加%JAVA_HOME%\bin;在dos控制台下輸入javac命令,如果有資訊則配置成功說明:1.配置P