Time of Update: 2018-12-04
原帖:http://topic.csdn.net/u/20090519/18/7b8cf7ef-bc06-4d26-8a2c-692eb0562231_2.html 作者:zangxt String類是Java中很重要的一個類,在此總結一下這個類的特別之處。下面的相關資料翻譯自《java語言規範》(第三版)和《java虛擬機器規範》(第二版),有的直接摘引了原文。下面的代碼都是用SUN jdk1.6 javac來編譯。 1.String
Time of Update: 2018-12-04
原帖:http://www.xl7788.com/zt/computerprogram/JavaInterface.html 一個軟體設計的好壞,我想很大程度上取決於它的整體架構,而這個整體架構其實就是你對整個宏觀商業業務的抽象架構,當代表商務邏輯的高層抽象層結構 合理時,你底層的具體實現需要考慮的就僅僅是一些演算法和一些具體的業務實現了。當你需要再開發另一個相近的項目時,你以前的抽象層說不定還可以再次利用
Time of Update: 2018-12-04
原帖:http://www.xl7788.com/zt/computerprogram/JavaIO.html (Input Stream)和輸出資料流(Output
Time of Update: 2018-12-04
原帖:http://www.xl7788.com/zt/computerprogram/JavaInClass.html 從Java1.1開始引入了內部類以來,它就引起了人們的激烈爭論。其實任何優秀的語言特性用得不好就是濫用,內部類用得不好就會導致代碼像迷宮一樣,導致出現毫無重用的綜合征。1、內部類分為成員內部類、靜態嵌套類、方法內部類、匿名內部類。幾種內部類的共性:A、內部類仍然是一個獨立的類,在編譯之後會內部類會被編譯成獨立的.class檔案,但是前面冠以外部類的類命和$符號。B、內部類不能
Time of Update: 2018-12-04
最近做Web開發時碰到一個問題,要求向一些使用者發送通知訊息,為了避免重複發送,需要構建一個不包含重複使用者的列表。以下是實現方法:-----------------------------------------------------------------import org.apache.commons.collections.list.SetUniqueList;private void cleanSameSender(List<ExamRelation>
Time of Update: 2018-12-04
最近在使用阿里的Dubbo【http://code.alibabatech.com/wiki/display/dubbo/Home-zh】做一個即時分析功能,為了提高效能,對程式進行了很多的最佳化工作,在此過程中JDK中的jvisualvm的確功勞不小,但是也有讓我誤解的地方。 先說它的功勞: 第一:可以幫我監控線程的數量,及時發現沒有正常結束的線程。由於給dubbo配置了800的線程池,我當前活動的線程中守護線程為826,總數減去800個線程池中的線程,dubbo佔用了26
Time of Update: 2018-12-04
這篇文章僅針對HostSpot虛擬機器第一步,寫一個測試的policy檔案,命名為test.policy,指定可以訪問tools.jar,內容如下:grant codebase "file:${java.home}/../lib/tools.jar" { permission java.security.AllPermission;};第二步,編寫一個測試程式TestJVisualVM.java:import java.util.HashMap;import java.util.Map;
Time of Update: 2018-12-04
首先用maven建立一個簡單的Java application.mvn archetype:generate -DgroupId=org.freebird.protocolbuffer -DartifactId=sample -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false建立的目錄結構如下:$ tree samplesample├── pom.xml└── src ├── main │
Time of Update: 2018-12-04
/** * Base64Util for Java * cheungmine * 2009-11-8 */public class Base64Util {/** * @param args */public static void main(String[] args){// 源位元組數組int cb = 0;System.out.print("源位元組數組: ");byte in[] = new byte[100];in[cb++]='1';in[cb++]='2';in[cb++]='3
Time of Update: 2018-12-04
不變類的意思就是不會發生變化的類,就是當類的執行個體被建立後,狀態不會發生變化的類。 舉個例子:如果人是一個class,那麼我們中的每一個都是人這個類的具體的instance,如果人這個類只有一個狀態就是生身父母,那麼它就是一個不變類,因為每一個人在出生的那一刹那,生身父母就已經被設定了值,而且終生都不會發生變化。不變類有什麼好處呢?1) 不變類是安全執行緒的,由於不變類的狀態在建立以後不再發生變化,所以它可以線上程之間共用,而不需要同步。2)
Time of Update: 2018-12-04
我用過Java service wrapper,很好。不過我也能自己製作指令碼完成準系統。肯定沒有Java service wrapper功能全面,不過夠用了,而且完全掌控。目標:1.從Maven項目中產生安裝包2.將安裝包安裝成Ubuntu service。我的Java程式是用來發送email的,通過讀取MongoDB的email內容,發送資訊。同時還依賴一個config.xml檔案作為啟動參數,裡面配置了MongoDB的基本資料和SMTP伺服器的基本資料。現在通過執行一個指令碼create_
Time of Update: 2018-12-04
CSDN發現了一個問題。類是這樣寫的:public class Sub{ String str=new String( "good "); //一個地址的傳遞,new出來的對象,在記憶體中已經開闢了空間 public static void main(String args[]){ Sub ex=new Sub(); ex.change(ex.str); System.out.println(ex.str); } public
Time of Update: 2018-12-04
原帖:http://topic.csdn.net/t/20030921/23/2285054.html“介面(Interface)是什麼,為什麼使用介面,如何恰當的使用介面?”---------------------------------------------------------------------------------------------------------------------------- (wulemale) 一個類,當需要實現多重繼承時就要用到介面了
Time of Update: 2018-12-04
1 基本類型作為參數, 當方法參數為基本類型時,它是通過傳值方式進行調用的,這種傳遞的特點是 (1) 它所傳遞的實參的值是一個副本 (2) 單向傳遞,方法內部可以修改形參的值,但這種修改不會影響到對應的實參 直觀來看,傳值過程相當於一賦值的過程,實參是右值,形參是左值,它們發生聯絡只在調用的那一時刻,以後二者再無聯絡。 2 複合類型作為參數 如果實參是一個類的對象,那麼在調用相應的方法時,系統會將該對象的地址值傳遞給形參。
Time of Update: 2018-12-04
原帖:http://blog.csdn.net/xuchanghao/archive/2009/01/16/3796276.aspx 一、多種方式讀檔案內容。 1、按位元組讀取檔案內容 2、按字元讀取檔案內容 3、按行讀取檔案內容 4、隨機讀取檔案內容================================================================================================
Time of Update: 2018-12-04
原帖:http://topic.csdn.net/t/20060605/13/4801113.html (UnAgain) 最近看了一個文章,問“java到底是按值傳遞還是按引用傳遞?”。本來覺得很簡單,為了能說的準確一點,我還專門就這個問題看了看langspec3.0。一看收穫還真不小,就寫了這篇文章。 我還不敢確定自己的觀點對不對,所以貼在這裡,希望大家一起討論。 另外,貼在blog上了,在那裡的效果比這裡好。 http://blog.csdn.net/UnAgain/archive/200
Time of Update: 2018-12-04
1. 簡單類型是按值傳遞的 Java 方法的參數是簡單類型的時候,是按值傳遞的 (pass by value)。這一點我們可以通過一個簡單的例子來說明:/* 例 1 *//** * @(#) Test.java * @author fancy */public class Test { public static void test(boolean test) { test = ! test; System.out.println("In
Time of Update: 2018-12-04
從追MM談Java的23種設計模式 - 太經典了,轉到自己的BLOG上收藏著先設計模式做為程式員的“內功心法”,越來越受到.net 社區的重視,這種變化是很可喜的,Java社區走在了我們的前面,但這種狀況也許有一天會發生改變。從追MM談Java的23種設計模式1、FACTORY—追MM少不了請吃飯了,麥當勞的雞翅和肯德基的雞翅都是MM愛吃的東西,雖然口味有所不同,但不管你帶MM去麥當勞或肯德基,只管向服務員說“來四個雞翅”就行了。麥當勞和肯德基就是生產雞翅的Factory.
Time of Update: 2018-12-04
LinkedList list = new LinkedList(); File tmp = new File(path); list.add(tmp);File[] files; while (!list.isEmpty()) { tmp = (File) list.removeFirst(); if(tmp.isDirectory()){ files = tmp.listFiles();for(File file: files){ if (file.isDirectory()){
Time of Update: 2018-12-04
A.不使用遞迴:import java.io.File;import java.util.LinkedList;public class FileSystem { public static void main(String[] args) { long a = System.currentTimeMillis(); LinkedList list = new LinkedList(); File dir =