時間: 2004-4-06 13:18:27 標題: 一個絕對害了不少人的Java技術問題! 我不記得自己是怎麼學到的,但是我相信絕大部分從事java學習Java的人都一直這麼以為一個小的技術問題: 在Java中方法參數的傳遞,對象是傳遞引用,基礎資料型別 (Elementary Data Type)是傳遞值。而且一直一來都似乎沒有人提出過疑問。
基本型別 大小 最小值 最大值 boolean ----- ----- ------ char 16-bit Unicode 0 Unicode 2^16-1 byte 8-bit -128 +127 short 16-bit -2^15 +2^15-1 int
/**Copyright (C) Guan Chengwen at Xiamen University **2005-12-25 **Student ID: 03231004, Philosophy Department **Email: mydream2007@hotmail.com QQ: 233204600 **Homepage: http://blog.csdn.net/aprin/ ** **File: Main.java **Package:
經常看到一些關於Java和.net的爭論。例如 http://www.cnblogs.com/hack/archive/2010/05/30/1747513.html。 有爭論是好事情,在一個朝氣蓬勃的環境裡應該有各種聲音,君不見春秋戰國百家爭鳴嗎? 但是發現好多人沒有深刻地調查研究,有了一點直覺就匆匆妄下結論,更有甚者憑感情說話。這不是良好的做事風格。毛主席說過沒有調查就沒有發言權。 真心希望我們能夠改變這樣的風格。有深入調研的精神,何愁技術不能突破!!!!
原文連結
一 個曾經對java不屑一顧的刀Net高手迫於公司壓力 開始學習Java以下是他初學Java的第一天做得事情1. 上Google.百度。雅虎,拚命搜尋 JSDN(MSDN) 結果各大搜尋引擎沒有提供該關鍵字。2。在Google上輸入 "vs.net 2003 JAVA版" 未遂3。打電話問一個 JAVA高手開發JAVA使用什麼工具。得到的回話如下:“你個菜鳥。我們寫JAVA程式向來只用記事本”4.在百度上用純中文搜尋到用JBILDER
經常上網的朋友一定知道JavaScript指令碼語言,因為在很多的首頁當中都有這樣的標識,這個標識的中間就是用來編寫JavaScript指令碼語言的代碼的。我們還知道有一種網路程式設計語言??Java。很多人以為JavaScript就是基於Java語言的程式設計語言,如果這樣想,那就錯了,Java與JavaScript完全是由兩個不同的公司開發的兩個不同的產品。Java是SUN公司推出的新一代物件導向的網路程式設計語言,它的設計思想是最大限度的利用網路,特別適合於Internet應用程式的開發,
IO分兩種流 位元組流 InputStream OutputStream 字元流 Reader Writer 他們都是抽象類別 具體實現 位元組流 FileInputStream FileOutputStream 字元流 FileReader FileWriter 位元組流轉換成字元流可以用 InputSteamReader OutputStreamWriter 轉換成BufferdReader BufferedWriter 他們具有緩衝區 例如:讀取檔案
今天去逛javaworld.com.tw看到有人在問線程同步的問題,最近對多線程高度興趣,寫了不少類似的程式,所以線程同步也是肯定要用的到的,synchronized加在函數名稱中間,我記得是對對象的同步,也就是說多線程如果想保持同步,必須保證這些線程用的是一個對象。看到過synchronized寫到函數裡面的,但是沒得感受,今天測試了一把,把synchronized寫到函數內部的,就不用保證一個對象了,所有的N個不同對象都可以。這個是代碼看下吧。先來個synchronized寫到函數內部的/*
2011-1-6 java遍曆map所有元素//JDK1.5後Map map = getMap(); for(Object obj : map.keySet()) { Object key = obj; Object value = map.get(obj);}//JDK1.5之前Map map = getMap();Iterator iter = map.entrySet().iterator(); while(iter.hasNext()) {
兩段代碼,結果的差異,請結合代碼給圖解下記憶體和執行過程。 萬分感謝! public class PassAddr { public static void main(String[] args) { String s=new String("old"); //1 method(s); //3 System.out.println(s); } static
子類的執行個體化主要分為兩個步驟:<1>.類相關靜態內容初始化;*先父類再子類: 1.父類的static屬性; 2.父類的static塊; 3.子類的static屬性; 4.子類的static塊;<2>.類的執行個體內容初始化;*調用構造子:先父類後子類:構造子調用之前先執行個體化執行個體欄位和塊 5.父類的普通屬性; 6.父類的普通塊; 7.父類的構造子; 8.子類的普通屬性; 9.子類的普通塊; 10.子類的構造子; 舉例:package
初學者測試 昨天自考考了《java程式語言設計》,有點不太記得類的初始化過程了,順便複習了一下。 同樣準備了測試題一枚。把自己的email分散到輸出中,如果正確輸出,說明分析正確了。 不行怎麼行,這是基礎。下面程式請先分析,如果結果(用白色字型是輸出結果)正確,說明您對java類的初始化已經很熟悉,算是過關,如果沒有,那趕緊複習吧。 package nie.test.extend; /** 子構造子的初始化過程: * @author dotjar *
package net.nie.test;import java.util.HashMap;import java.util.Iterator;import java.util.Map;public class HashMapTest { private static Map<Integer, String> map=new HashMap<Integer,String>(); /** 1.HashMap 類映射不保證順序;某些映射可明確保證其順序:
通過include可以防止頁面代碼冗餘和重複,並且規範布局,只需要一個包含語句,就可以實現代碼重用,提高效率,具體如下:1> include指令:<%@ include
JAVA相關基礎知識1、物件導向的特徵有哪些方面
1:常用的我們都是讀入到檔案流,然後再流中操作。這樣對於小檔案是沒問題的,對於大檔案,因為要把檔案對象轉換成流,所以只要對大檔案操作用到流肯定就溢出了,這裡介紹2個方法,其實都差不多2:一個是nio中的記憶體映射,一次可以映射int的最大數字,32位下也就2G了。故對這2G進行操作,具體的映射請看相關資料,也是用RandomAccessFile。3:自己用RandomAccessFile類,自己設定buffer,一次讀取buffer大小的位元組自己處理。
平時寫IO相關代碼機會挺少的,但卻都知道使用BufferedXXXX來讀寫效率高,沒想到裡面還有這麼多陷阱,這兩天突然被其中一個陷阱折騰一下:讀一個檔案,然後寫到另外一個檔案,前後兩個檔案居然不一樣? 解決這個問題之後,總結了幾個注意點。注意點一:Reader/Writer讀寫二進位檔案是有問題的:[java] view plaincopyprint?public void copyFile1() { File srcFile = new File("E://atest/
最近在做一個項目,其中涉及到一組操作,命名為: 1. “add”; 2. "logicDel" 3. "physicDel" 4. "update" 按照大家耳熟能詳的方式將這四種操作作為 final 的屬性進行聲明。 public final String ADD = "add" ...於是就產生了這樣的代碼: if (ADD.equals(commandStr)){...}
如何調在CLI中使用java tool(JDK中的java命令)調用一個打包在jar中的類,我想大多數人都能給出籠統的方案:java -classpath xxxxx com.test.classA這個答案只能說太籠統,再追問一句,如果這個類還依賴若干jar包,並且這些jar包,包括classA所在的jar包都放在路徑/root/lib/ 下,classpath內容應該是什嗎?我給我的答案是 -classpath=/root/lib,