java流程
㈠ 求java學習流程
我給你列個完整的java學習過程吧,我也開始學,網上找的資料,給你看看
目前,JAVA是開發人員的熱寵,很多論壇都有不少熱愛JAVA的開發人員,也有不少想成為JAVA程序員,但苦於不知道該如何學習,也不清楚該學些什麼知識才能成為一個JAVA程序員。本人在這里拋磚引玉,和大家討論成為一個JAVA初級程序員應該具有的知識,與大家共享。
個人認為想成為一個合格的JAVA初級程序員應該具備如下知識:
一、面向對象的知識:JAVA是一個面向對象的開發語言,因此熟悉面向對象對學習JAVA很有必要,您要了解:什麼是對象,什麼是類;什麼是封裝,什麼是多態,什麼是繼承;什麼是抽象類,什麼是介面。了解了概念後,您還需要這些概念是如何體現的,如類和對象有什麼區別?類是如何封裝的?
二、JAVA語法:如果您已經有了開發經驗,恭喜您,您學習JAVA語法來將比較容易。如果您有C++等面向對象語言的開發經驗,您只需簡單的翻看一下介紹JAVA的相關書籍就可以了。如果您是新手,沒有關系,您下些工夫,好好研究一本JAVA初級教程之類的書就可以了。
學習了JAVA語法,加上面向對象的知識,只有您用心,您就可以寫出來比較好的JAVA代碼了。如果您再抽出時間熟悉一下JAVA編程規范,您代碼的水平就應該不俗了。
三、JSP和HTML:在我國的絕大多數公司,做JAVA程序員都少不了和JSP以及HTML打交道。因此,想成為JAVA程序員就不可避免的要熟悉JSP和HTML,您最好能知道JSP的幾個內置對象,如Session,Request,Reponse,,以及常用的JSP標簽,如include,userBean等。盡管一些工具會幫您生成HTML代碼,但您還是要熟悉比如title,,,,等。如果您再熟悉一下JS和CSS就更好了,那會使您製作的頁面更友好。
四、WebServer:熟悉了以上三種,可以肯定的說您已經可以製作出來JSP頁面了,您也可以在您的頁面里使用自己開發的JAVA類(JAVABEAN)了,但您的頁面總要跑起來才能看到您要的效果,這就要求您必須熟悉一種WebServer,比如:TOMCAT,RESIN等。您要熟悉如何發布您的應用,如何利用WebServer的資料庫資源等。
五、開發工具:大家都知道,開發工具可以幫助您更好更快地開發,因此熟悉幾種開發工具很有必要。目前JAVA的開發工具比較流行的有JBuilder,IDEA,Eclipse,HTML的開發工具有Dreamweaver等。
六、熟悉一種框架:熟悉一種框架其實是成為JAVA程序員的一種可選知識,但目前開發B/S結構的應用的開發小組,都差不多會採用一種框架來構建自己的應用系統。框架都會有許多可重用的代碼,良好的層次關系和業務控制邏輯,基於框架的開發使你可以省出很多的開發成本。目前比較流行的框架有Struts和WAF等。
J2SE開發桌面應用軟體比起VC,VB,DEPHI這些傳統開發語言來說,優勢好象並不明顯。J2ME對於初學者來說,好象又有點深奧,而且一般開發者很難有開發環境。所以現在應用最廣泛又最好學的就是J2EE了。J2EE又包括許多組件,如JSP,SERVLET,JAVABEAN,EJB,JDBC,JAVAMAIL等。要學習起來可不是一兩天的事。
當然JAVA語法得先看一看的,I/O包,UTIL包,LANG包你都熟悉了嗎?然後再從JSP學起。如果你學過HTML,那麼事情要好辦的多,如果沒有,那你快去補一補HTML基礎吧。其實JSP中的JAVA語法也不多,它更象一個腳本語言,有點象ASP。然後你就該學一學SERVLET了。SERVLET就是伺服器端小程序,他負責生成發送給客戶端的HTML文件。JSP在執行時,也是先轉換成SERVLET再運行的。雖說JSP理論上可以完全取代SERVLET,這也是SUN推出JSP的本意,可是SERVLET用來控制流程跳轉還是挺方便的,也令程序更清晰。接下來你應該學習一下JAVABEAN了,可能你早就看不管JSP在HTML中嵌JAVA代碼的混亂方式了,這種方式跟ASP又有什麼區別呢?還好,SUN提供了JAVABEAN可以把你的JSP中的JAVA代碼封裝起來,便於調用也便於重用。接著就是EJB了,EJB就是ENTERPRISE JAVABEAN,看名字好象它是JAVABEAN,可是它和JAVABEAN還是有區別的。它是一個體系結構,你可以搭建更安全、更穩定的企業應用。它的大量代碼已由中間件(也就是 們常聽到的WEBLOGIC,WEBSPHERE這些J2EE伺服器)完成了,所以 們要做的程序代碼量很少,大部分工作都在設計和配置中間件上。至於JDBC,就不用 多說了,你如果用JAVA編過存取資料庫的程序,就應該很熟悉。還有,如果你要用JAVA編發送電子郵件的程序,你就得看看JAVAMAIL了。
㈡ 運行一個java程序的步驟是怎樣的請做詳細說明!
Java程序從源文件創建到程序運行要經過兩大步驟:1、源文件由編譯器編譯成位元組碼(ByteCode)
2、位元組碼由java虛擬機解釋運行。因為java程序既要編譯同時也要經過JVM的解釋運行,所以說Java被稱為半解釋語言( "semi-interpreted" language)。
下面通過以下這個java程序,來說明java程序從編譯到最後運行的整個流程。代碼如下:
//MainApp.java
public class MainApp {
public static void main(String[] args) {
Animal animal = new Animal("Puppy");
animal.printName();
}
}
//Animal.java
public class Animal {
public String name;
public Animal(String name) {
this.name = name;
}
public void printName() {
System.out.println("Animal ["+name+"]");
}
}
第一步(編譯): 創建完源文件之後,程序會先被編譯為.class文件。Java編譯一個類時,如果這個類所依賴的類還沒有被編譯,編譯器就會先編譯這個被依賴的類,然後引用,否則直接引用,這個有點象make。如果java編譯器在指定目錄下找不到該類所其依賴的類的.class文件或者.java源文件的話,編譯器話報「cant find symbol」的錯誤。
編譯後的位元組碼文件格式主要分為兩部分:常量池和方法位元組碼。常量池記錄的是代碼出現過的所有token(類名,成員變數名等等)以及符號引用(方法引用,成員變數引用等等);方法位元組碼放的是類中各個方法的位元組碼。下面是MainApp.class通過反匯編的結果,我們可以清楚看到.class文件的結構:
第二步(運行):java類運行的過程大概可分為兩個過程:1、類的載入 2、類的執行。需要說明的是:JVM主要在程序第一次主動使用類的時候,才會去載入該類。也就是說,JVM並不是在一開始就把一個程序就所有的類都載入到內存中,而是到不得不用的時候才把它載入進來,而且只載入一次。
下面是程序運行的詳細步驟:
在編譯好java程序得到MainApp.class文件後,在命令行上敲java AppMain。系統就會啟動一個jvm進程,jvm進程從classpath路徑中找到一個名為AppMain.class的二進制文件,將MainApp的類信息載入到運行時數據區的方法區內,這個過程叫做MainApp類的載入。
然後JVM找到AppMain的主函數入口,開始執行main函數。
main函數的第一條命令是Animal animal = new Animal("Puppy");就是讓JVM創建一個Animal對象,但是這時候方法區中沒有Animal類的信息,所以JVM馬上載入Animal類,把Animal類的類型信息放到方法區中。
載入完Animal類之後,Java虛擬機做的第一件事情就是在堆區中為一個新的Animal實例分配內存, 然後調用構造函數初始化Animal實例,這個Animal實例持有著指向方法區的Animal類的類型信息(其中包含有方法表,java動態綁定的底層實現)的引用。
當使用animal.printName()的時候,JVM根據animal引用找到Animal對象,然後根據Animal對象持有的引用定位到方法區中Animal類的類型信息的方法表,獲得printName()函數的位元組碼的地址。
開始運行printName()函數。
特別說明:java類中所有public和protected的實例方法都採用動態綁定機制,所有私有方法、靜態方法、構造器及初始化方法<clinit>都是採用靜態綁定機制。而使用動態綁定機制的時候會用到方法表,靜態綁定時並不會用到。
㈢ 用java程序
一、JAVA中所需要做的工作
在JAVA程序中,首先需要在類中聲明所調用的庫名稱,如下:
static {
System.loadLibrary(「goodluck」);
}
在這里,庫的擴展名字可以不用寫出來,究竟是DLL還是SO,由系統自己判斷。
還需要對將要調用的方法做本地聲明,關鍵字為native。並且只需要聲明,而不需要具 體實現。如下:
public native static void set(int i);
public native static int get();
然後編譯該JAVA程序文件,生成CLASS,再用JAVAH命令,JNI就會生成C/C++的頭文件。
例如程序testdll.java,內容為:
public class testdll
{
static
{
System.loadLibrary("goodluck");
}
public native static int get();
public native static void set(int i);
public static void main(String[] args)
{
testdll test = new testdll();
test.set(10);
System.out.println(test.get());
}
}
用javac testdll.java編譯它,會生成testdll.class。
再用javah testdll,則會在當前目錄下生成testdll.h文件,這個文件需要被C/C++程序調用來生成所需的庫文件。
二、C/C++中所需要做的工作
對於已生成的.h頭文件,C/C++所需要做的,就是把它的各個方法具體的實現。然後編譯連接成庫文件即可。再把庫文件拷貝到JAVA程序的路徑下面,就可以用JAVA調用C/C++所實現的功能了。
接上例子。我們先看一下testdll.h文件的內容:
#i nclude <jni.h>
#ifndef _Included_testdll
#define _Included_testdll
#ifdef __cplusplus
extern "C" {
#endif
JNIEXPORT jint JNICALL Java_testdll_get (JNIEnv *, jclass);
JNIEXPORT void JNICALL Java_testdll_set (JNIEnv *, jclass, jint);
#ifdef __cplusplus
}
#endif
#endif
在具體實現的時候,我們只關心兩個函數原型
JNIEXPORT jint JNICALL Java_testdll_get (JNIEnv *, jclass); 和
JNIEXPORT void JNICALL Java_testdll_set (JNIEnv *, jclass, jint);
這里JNIEXPORT和JNICALL都是JNI的關鍵字,表示此函數是要被JNI調用的。而jint是以JNI為中介使JAVA的int類型與本地的int溝通的一種類型,我們可以視而不見,就當做int使用。函數的名稱是JAVA_再加上java程序的package路徑再加函數名組成的。參數中,我們也只需要關心在JAVA程序中存在的參數,至於JNIEnv*和jclass我們一般沒有必要去碰它。
好,下面我們用testdll.cpp文件具體實現這兩個函數:
#i nclude "testdll.h"
int i = 0;
JNIEXPORT jint JNICALL Java_testdll_get (JNIEnv *, jclass)
{
return i;
}
JNIEXPORT void JNICALL Java_testdll_set (JNIEnv *, jclass, jint j)
{
i = j;
}
編譯連接成庫文件,本例是在WINDOWS下做的,生成的是DLL文件。並且名稱要與JAVA中需要調用的一致,這里就是goodluck.dll 。把goodluck.dll拷貝到testdll.class的目錄下,java testdll運行它,就可以觀察到結果了。
㈣ Java程序
public class Vehicle {
public void startup() {
System.out.println("一般啟動方法");
}
}
public class Car extends Vehicle {
@Override
public void startup() {
System.out.println("小汽車的啟動方法");
}
}
㈤ 如何編寫java程序
新建java第一種方法:
1。首先右擊滑鼠,新建一個文本文檔。
2。更改文本文檔的後綴名為
.java
。注意文件名必須和類名相同。
如果你的電腦沒有顯示後綴名的話需要對電腦進行一定的設置。
3。打開計算機——組織——文件夾選項——查看——將隱藏文件夾選項取消勾選即可。
建議將這個選項取消勾選,有很多的惡意程序會侵入我們的電腦,取消勾選可以很好的查看病毒等文件的類型。
4。右擊建好的文檔,選擇編輯即可進行java的編寫。
在編寫的時候我們有一定的格式,java語言的格式是為了我們日後更改程序方便而規定的,我們一定要遵循這種格式編寫。
第二種方法:
1直接新建一個記事本文檔,然後選擇保存。
注意保存時額位置,不要等到保存完卻找不到文件到哪了。
2在選擇保存的窗口中輸入後綴「.java」,然後保存即可。注意文件名必須和類名相同。
3同樣右擊文件,選擇編輯即可在文件中進行編輯了。
前兩個大括弧之間回車,第二對大括弧有一個間隔,直接按TAb鍵即可。
測試運行java程序:
打開運行命令,也可以直接在開菜單中輸入CMD調用命令窗口。
你的文件保存在哪裡就將你的文件目錄輸入到命令提示符窗口中,例如我的是D盤根目錄,所以我輸入「d:」。
編譯java文件,生成class文件:
在命令提示符中輸入「javac
文件名.java」,我的文件名為A,所以輸入javac
A.java然後回車,等待編譯。
運行文件:
繼續輸入「java
文件名」然後回車就可以運行我們寫好的文件了。
㈥ java 程序
我想學編寫JAVA程序
——我也想學JAV程序設計。
在學之前來了解下,編寫JAVA時要建立哪幾個文件夾?
——不用建什麼文件夾,只要安裝好JDK。
說明每個文件夾的作用
——現在在網吧,沒有JDK,沒法為你解釋那些文件夾。
學編寫JAVA是不是英語一定要會?
——英語,初中文化就夠了,雖然程序源碼那麼多英語,但是並不是涉及多少高級英語。
英語還有那些代碼是不是要記住?
——你應該記住JAVA中的一些關鍵字、修飾符之類的,只要懂漢語拼音和標識符的命名規則,編寫程序沒有問題。
幫我推薦個編寫JAVA的工具,最好是免費的。
編寫JAVA程序可以用【記事本】或者textpad配合JDK,也可以用JBuilder。
你們可以編個簡單的程序給我看,步驟要說清楚,圖就不用了。隨便什麼都行,步驟要清楚啊!不然我不給分哦!
——
public class pro //以下為pro類 含第三行的語句則說明本類為主類
{
public static viod main[String args] //這一句目前我還沒學到 主類含有此句
{
char c='A'; //定義char型變數c 賦值為A
System.out.println("我要學JAVA,我可以用JAVA輸出:"+c); //本行將控制輸出「我要學JAVA,我可以用JAVA輸出:A」
}
}
將代碼保存為pro.java(假設保存到C:\J\,設置好JDK的PATH和CLASSPACH環境變數後,可以運行CMD,用CD命令進入C:\J,然後使用javac命令編譯*.java,如C:\J\>javac pro.java,該目錄下產生一個pro.class文件。用相同辦法使用java命令可以運行pro程序,如C:\J\>java pro,注意編譯*.java時需要輸入擴展名,運行class時沒有擴展名。)
呵呵!~~~~~~~~`因為是剛入門,所以一定要說清楚步驟,拜託了各位大哥大姐!~~~~~~~~~
——呵呵,我也是剛入門,自學《java基礎教程》到40頁,學的還算踏實,以後我們可以互相交流討論一下。
!我只知道這么多了