Time of Update: 2018-12-05
在項目中,通常要修改項目所在的包,比如剛開始可能是com.baidu.android, 後來就需要修改為com.google.android. 以前我是改的:先右擊com.baidu.android包,refactor , rename.在manifest中,修改<manifest package="com.baidu.android">成<manifest
Time of Update: 2018-12-05
1、synchronized保證同步先看一個產生偶數的類package demo.thread;/** *這是一個int產生器的抽象類別 * */public abstract class IntGenerator {private volatile boolean canceled = false;public abstract int next();public void cancel() {canceled = true;}public boolean isCanceled()
Time of Update: 2018-12-05
這是一個來自《java編程思想上的樣本》package demo.thread;/** *sleep()是靜態方法,是屬於類的,作用是讓當前線程阻塞 *join()是使線程同步,如在某個線程裡調用t.join()表示t線程執行完再執行當前線程 *interrupt()給線程設定一個標誌表示該線程已被中斷,但在異常捕獲時將清理這個標誌 *所以在catch子句中,該標誌為false */public class SleepJoinDemo {public static void
Time of Update: 2018-12-05
所謂的後台線程,是指在程式啟動並執行時候在後台提供一種泛型服務的線程,並且這種線程並不屬於程式中不可或缺的部分。因此當所有的非後台線程結束時,程式也就終止了,同時會殺死所有後台線程。反過來說,只要有任何非後台線程(使用者線程)還在運行,程式就不會終止。後台線程在不執行finally子句的情況下就會終止其run方法。後台線程建立的子線程也是後台線程。下面是一個後台線程的樣本:package demo.thread;import
Time of Update: 2018-12-05
這是個線程同步的經典例子,原始碼如下: package demo.thread;/** *經典生產者與消費者問題:生產者不斷的往倉庫中存放產品,消費者從倉庫中消費產品。 *其中生產者和消費者都可以有若干個。倉庫容量有限,庫滿時不能存放,庫空時不能取產品 */public class ProducersAndConsumers {public static void main(String[] args) {Storage storage = new Storage();Thread
Time of Update: 2018-12-05
package mine.util.others;import java.util.Random;public class GetRandom {// 返回ch1和ch2之間(包括ch1,ch2)的任意一個字元,如果ch1 > ch2,返回'\0'public static char getRandomChar(char ch1, char ch2) {if (ch1 > ch2)return 0;// 下面兩種形式等價// return (char) (ch1 + new
Time of Update: 2018-12-05
1、Applet類及各個方法說明 Applet類提供一個基本架構,使得applet可以通過Web瀏覽器來運行,applet沒有main方法,它依靠瀏覽器調用Applet類中的方法。Applet不安全。下面是截取的一段Applet類的原始碼: /** * Called by the browser or applet viewer to inform this applet that it has * been loaded into the system. It is always
Time of Update: 2018-12-05
1、伺服器端代碼package demo.net;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStream;import java.net.DatagramPacket;import java.net.DatagramSocket;import
Time of Update: 2018-12-05
1、java標準異常概述
Time of Update: 2018-12-05
註:以下破解思路及代碼源自我同學木子1、先來看一個無任何安全措施的登入系統的破解方法:每次類比表單提交,若登入成功,此時返回的前序資訊中有Location欄位,登入失敗無此欄位,繼續類比登入。直到破解成功,本人成功破解部分同學校園網登入密碼(純四位元字的)代碼如下:package demo.net;import java.io.IOException;import java.io.PrintWriter;import java.net.HttpURLConnection;import java.
Time of Update: 2018-12-05
SAX characters(char ch[],int start,int length) 並不一定就能完整的表示 元素的值. 如果xml文檔交長, 有可能一個元素的值會被分兩次讀入,所以如果只適用上面的方法去獲得元素的值,很可能得到的不完整的資料.SAX可能容易忽略characters這個回調方法的一點細節,characters會在startElement和endElement之間調用多次,不能保證一次會返回整個文字區塊,所以必須等待endElement的時候才可以認為這個文本結點結束。1.
Time of Update: 2018-12-05
1、InetAddress類實現簡單IP掃描獲得主機名稱package demo.net;import java.net.InetAddress;import java.net.UnknownHostException;/* * 擷取指定IP的主機名稱 */public class IPScanner {// 傳入IP地址,返回主機名稱,若主機不可達則返回ip地址的字串形式public static String scanner(byte[] ip) {InetAddress addr =
Time of Update: 2018-12-05
1、SMTP簡介2、發送過程3、原始碼樣本package demo.net;import java.awt.BorderLayout;import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.io.IOException;import java.io.PrintWriter;import
Time of Update: 2018-12-05
1、用多個線程來同時為多個客戶提供服務,這是提高伺服器的並發效能的最常用的手段,那麼怎樣來為多個使用者提供服務呢? 主要有三種方法: 2、為了更清楚理解伺服器到底是怎麼工作的,下面用第一種方式來處理多個使用者請求。如果想用第二、第三方式可以參考Touch的部落格:java多線程總結五:線程池的原理及實現 下面的樣本中用戶端輸入資訊,伺服器端回複相同的資訊,可以同時開啟多個用戶端,同時輸入資訊,原始碼如下:伺服器端代碼:package demo.net;import
Time of Update: 2018-12-05
映 射 類 型Java類型標準SQL類型描 述datejava.util.Date或者java.sql.DateDATE代表日期,形式為:YYYY-MM-DDtimejava.util.Date或者java.sql.TimeTIME代表時間,形式為:HH:MM:SStimestampjava.util.Date或者java.sql.TimestampTIMESTAMP代表時間和日期, 形式為:YYYYMMDDHHMMSScalendarjava.util.CalendarTIMESTAMP
Time of Update: 2018-12-05
URL:http://www.open-open.com/26.htm HtmlUnit 點擊次數:1761HtmlUnit 是 JUnit 的擴充測試架構之一。HtmlUnit 將返迴文檔類比成 HTML,這樣您便可以直接處理這些文檔了。HtmlUnit 使用例如 table、form 等標識符將測試文檔作為 HTML 來處理。它同樣需要遵循 JUnit 測試架構結構的 Java 測試程式。 MaxQ
Time of Update: 2018-12-05
主要使用的是java.util.Robot類來捕獲螢幕,可以實現對螢幕一個矩形地區的捕獲,通過這個類,我們也可以實現一個遠端桌面控制的程式。package com.qiu.util; import java.io.*; import java.net.*; import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.awt.image.*; import javax.imageio.*;
Time of Update: 2018-12-05
Java發展到現在,按應用來分主要分為三大塊:J2SE,J2ME和J2EE。 這三塊相互補充,應用範圍不同。 J2SE就是Java2的標準版,主要用於案頭應用軟體的編程; J2ME主要應用於嵌入是系統開發,如手機和PDA的編程; J2EE是Java2的企業版,主要用於分布式的網路程式的開發,如電子商務網站和ERP系統。 先學習j2se
Time of Update: 2018-12-05
資料轉送時,有時需要將資料壓縮和解壓縮,本例使用GZIPOutputStream/GZIPInputStream實現。1、使用ISO-8859-1作為中介編碼,可以保證準確還原資料2、字元編碼確定時,可以在uncompress方法最後一句中顯式指定編碼import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.IOException;import java.util.zip.GZI
Time of Update: 2018-12-05
java.library.path 在java main函數運行前的設定 在VM arguments添加-Djava.library.path="C:/PROGRA~1/Shared/" 用System.getProperty("java.library.path") ;進行查看System.getProperty()參數大全 java.version