Java新手上路大全

- 中國WEB開發者網絡 (http://www.webasp.net)
-- 技術教程 (http://www.webasp.net/article/)
--- Java新手上路大全 (http://www.webasp.net/article/9/8111.htm)
-- 作者:未知
-- 發佈日期: 2004-02-23
Java新手上路大全(問問題之前請先看)
Helloworld功略
http://www.matrix.org.cn/forum_view.asp?forum_id=19&view_id=84

path和classpath
1.什麼是java的path和classpath?
http://www.matrix.org.cn/forum_view.asp?forum_id=19&view_id=904
2.如何一次把一個目錄下的所有.jar加入到classpath?
http://www.matrix.org.cn/forum_view.asp?forum_id=19&view_id=905
3.classspath 的默認值是什麼?
http://www.matrix.org.cn/forum_view.asp?forum_id=19&view_id=906
4.怎樣找到程序運行需要的類?
http://www.matrix.org.cn/forum_view.asp?forum_id=19&view_id=907
5. Linux下Path和ClassPath是怎麼設的?
http://www.matrix.org.cn/forum_view.asp?forum_id=19&view_id=908
6.如何修改path和classpath?
http://www.matrix.org.cn/forum_view.asp?forum_id=19&view_id=909

java的幫助和api文檔
1.什麼是java的api參考?
api是html格式的從sun的網站上可以找到一個包
包括api的參考和user guide,本站有做成.chm格式的便於查找。
api參考是用jdk的工具javadoc 生成的是開發者必備的文檔。
2.哪裡有JAVA基本類庫的源代碼?
jdk的安裝目錄下有源碼src.zip
3.java web start 是幹什麼用的?
http://www.matrix.org.cn/forum_view.asp?forum_id=19&view_id=911

開發環境
1.jre下的lib和jdk下的lib到底有什麼區別?
jre是JDK的一個子集。提供一個運行環境。JDK的lib目錄是給JDK用的,例如JDK下有一些工具,可能要用該目錄中的文件。例如,編譯器等。JRE的lib目錄是為JVM,運行時候用的。包括所有的標準類苦,和擴展類
2.我的jbuilder光標對不齊?
http://www.matrix.org.cn/forum_view.asp?forum_id=19&view_id=913
3.JDK版本衝突怎麼辦?
要決定windows使用哪一個JDK(win2000),改註冊表:
HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\CurrentVersion
的值,要決定JBuilder使用哪個JDK在project properties中可以設置。
4.editplus能夠編譯java嘛? 如何設置?
先要將JAVA的運行環境安裝並且調試好。
首先,從菜單「工具(Tools)」->「配置用戶工具...」進入用戶工具設置。
在類別裡展開「工具」樹形菜單->「用戶工具」,選擇「組和工具項目」中的「Group 1」,點擊面板右邊的「組名稱...」按鈕,將文本「Group1」修改成「編譯JAVA程序」。
然後選擇修改的組「編譯JAVA程序」,點擊「添加新工具」按鈕,選擇程序,建立「新建程序」,選中它。
然後就是最重要的步驟(修改屬性):
1.1 添加編譯功能
「菜單文字」裡的內容修改為「JAVAC」;
「命令」選擇安裝JDK後的BIN目錄中的編譯程序JAVAC.EXE,如果JDK 安裝路徑為「c:\jdk」,那麼此路徑為「c:\jdk\bin\javac.exe」;
「參數」選擇「文件名稱」,即顯示為「$(FileName)」;
「初始目錄」選擇「文件目錄」,顯示為「$(FileDir)」;
選擇「捕獲輸出」復選框。
1.2 添加執行功能
「菜單文字」裡的內容修改為「JAVA」;
「命令」選擇安裝JDK後的BIN目錄中的編譯程序JAVA.EXE,路徑為「c:\jdk\bin\java.exe」;
「參數」選擇「文件名(不含擴展名)」,即顯示為「$(FileNameNoExt)」;
「初始目錄」選擇「文件目錄」,顯示為「$(FileDir)」;
選擇「捕獲輸出」復選框。
這樣就完成了基本的配置工作

基礎概念
1.public,private,protect的訪問機制

http://www.matrix.org.cn/forum_view.asp?forum_id=19&view_id=914
2.Java中如何定義一個常量?
http://www.matrix.org.cn/forum_view.asp?forum_id=19&view_id=915
3.異常的throw和throws有什麼區別
throw是在程序中拋出異常,而throws是在方法的聲明中聲明拋出異常
4.upcasting是什麼意思
upcasting就是上溯.也就是說把一個子類當作它的父類看待,比如:對方法void do(Object obj){...},你可以把任何對像作為參數來調用.

編譯運行
1.怎麼把多個.java源文件編譯成一個.class?
java -d . a.java b.java
2. depreciated API 是什麼意思?
java發展太快,所以你應該盡可能用最新的api,但是老的api還是兼容的,所以回waning 你deprecated api
3.怎麼樣編譯一個目錄下的所有java文件?
ant或者jbuilder,或者自己寫腳本.
4.如何讓執行程序時不會出現dos窗口?
javaw
5.如何運行jar文件?
java -jar ***.jar
6.如何去掉JAVA的內存限制
加 -Xmx參數來設置maximum Java heap size,如: java -Xms10M MyClass
7.什麼是Java混淆編譯器?
http://www.matrix.org.cn/forum_view.asp?forum_id=19&view_id=916
8.如何將Java應用程序本地編譯為EXE?
http://www.matrix.org.cn/forum_view.asp?forum_id=19&view_id=917
9.jar命令?
http://www.matrix.org.cn/forum_view.asp?forum_id=19&view_id=918

數據類型與轉換
1.int、char、double與byte如何相互轉換?
http://www.matrix.org.cn/forum_view.asp?forum_id=19&view_id=919
2.int與byte array之間的轉換程序?
http://www.matrix.org.cn/forum_view.asp?forum_id=19&view_id=920
3.string和int之間的轉換?
a1=Integer.parseInt(s1);
s1=Integer.toString(a1);
4.java如何獲得隨機整數?
首先利用random()獲得一個隨機浮點數,然後乘以你希望得到的整數
的最大值,最後對得到的結果取整。
5.怎麼把String類型轉換成16進制的整數?
public static void main(String args[]){
String x = "0x300C8";
int y = Integer.decode(x).intvalue();
System.out.println(y);
}
6.int和java.lang.Integer有和區別?
int是數據類型,Integer是類Integer的功能更強,可以將整數轉換為浮點數運算,在java這種強類型語言中是很有用的。可以利用Integer的構造函數Integer(int)來對一個整數建立對象。類似的類還有Float,Short,Long等等

數據結構
1.如何實現二維向量?
Vector vector1=new Vector();
Vector vector2=new Vector();
...
..
HashTable numbers=new HashTable();
numbers.put("vector1",vector1);
numbers.put("vector2",vector2);
2. JAVA中怎麼得到現在的系統時間?
比如,當前date,Date today=new Date(System.currentTimeMillis());
3.如何將java.util.Date轉化為java.sql.Date?
轉化:

java.sql.Date sd;
java.util.Date ud;
//initialize the ud such as ud = new java.util.Date();

sd = new java.sql.Date(ud.getTime());

如果要插入到數據庫並且相應的字段為Date類型
那麼可以用PreparedStatement.setDate(int ,java.sql.Date)方法
其中的java.sql.Date可以用上面的方法得到

也可以用數據庫提供TO_DATE函數
比如 現有 ud
TO_DATE(new SimpleDateFormat().format(ud,"yyyy-MM-dd HH:mm:ss"),
"YYYY-MM-DD HH24:MI:SS")
注意java中表示格式和數據庫提供的格式的不同

系統相關
1.在JAVA中如何啟動一個程序?
String strCommand;
String cmd = "cmd";
if (! System.getProperty("os.name").equals("Windows NT")) cmd = "command";
cmd = cmd + " /c " + strCommand;
try {
Runtime.getRuntime().exec(cmd);
}
catch (IOException ex) {
}

strCommand 為命令串,DOS 底下怎麼用,這兒就可以怎麼用
2.如何得到應用程序的路徑
Properties System.getProperties()裡面有
3.如何得到當前系統時間?
1.SimpleDateFormat formatter=new SimpleDateFormat("yyyy-MM-dd");
String time=formatter.format(new Date());
2.Calendar cal = Calendar.getInstance();
int year = cal.get(Calendar.YEAR);
month=..類推


輸入輸出
1.是否可以用純JAVA 編寫程序來訪問串口?
Sun提供了一個叫javax.comm的package,專門用來對serial port進行操作.
2.writeutf和write的區別
http://www.matrix.org.cn/forum_view.asp?forum_id=19&view_id=921
3.如何利用FileWriter在文本中換行?
\r\n

網絡相關
1.如何讓我的程序通過proxy訪問外部網絡?
System.setProperty("java.proxyHost","your proxy here");

本地相關
1.如何調用本地的dll?
jni
2.如何用java編寫掃瞄儀程序?
http://www.matrix.org.cn/forum_view.asp?forum_id=19&view_id=2741

webasp.net