這篇是大二自學Java的時候記下的筆記,中午回顧印象筆記的時候意外看到了這篇。看到多年前寫下的文字,我想起那時候我對Java的懵懵懂懂,每天晚上在圖書館照着書寫書上的示例代碼,為一個中文分號絞盡腦汁,為命令提示符上打印出的圖案而興奮。到現在我依然覺得,一個從沒有過編程經驗的人在屏幕上打印出Hello World
的時候,他真的感覺是對一個全新的世界說了句“你好,我來了”。
盡管現在來看那時候遇到的問題現在看來真的是很簡單,甚至可以說是很蠢的,但我依然感激當初那個再圖書館寫代碼的自己。正是這一點一滴簡單的愚蠢的積累才有了今天的編程能力,現在我可以自己開發一個網站后台,這在當時的我看來是絕對不敢相信的事。
因此我也希望對剛接觸編程的朋友們說一句,如果你想學編程,不要好高騖遠,只需要從一點一滴做起,積累遇到的問題(如果有精力還應該寫成博客),堅持寫代碼,總有一天你會感激自己當初的堅持的。因為很多時候最重要的事情並不是你究竟做到了何種程度,而是你究竟有沒有做,堅持做一件事,並為之付出努力,這就是成功(狹義的)的方法。
在用Eclipse編譯運行java文件時不用考慮Package的問題,但是如何在命令提示符下運行添加Package后的java文件呢?
package test;
import test.B;
public class A {
public static void main(String[] args) {
B b=new B();
b.print();
}
}
package test;
public class B {
void print(){
System.out.println("ok!");
}
public static void main(String[] args) {
}
}
我在D:\workspace\test\src\test目錄下有兩個.java文件A.java和B.java,那么我該如何編譯這兩個文件呢?此時用命令提示符執行javac語句編譯A.java會顯示錯誤
我們在A中調用了B中的方法,所以只編譯A,B是不會被編譯的。要解決此問題需要同時編譯A和B。而A和B同在test包 下,所以我們找到test所在目錄D:\workspace\test\src,在cmd中執行命令 java .\test*.java 。此時A和B兩個文件同時編譯通過了。
再用java命令去執行A,發現直接用java A來運行會報錯。切換到A所在的D:/workspace/test/src/test 目錄下執行依然會報錯。由於我們之前的編譯的時候是在Package所在的目錄,那么我執行的時候要執行test下的A文件。
在D:\workspace\test\src 目錄下執行java test.A ,運行成功。