JAVA視頻教程從入門到精通
成都創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站建設(shè)、做網(wǎng)站、荔城網(wǎng)絡(luò)推廣、成都微信小程序、荔城網(wǎng)絡(luò)營銷、荔城企業(yè)策劃、荔城品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);成都創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供荔城建站搭建服務(wù),24小時(shí)服務(wù)熱線:13518219792,官方網(wǎng)址:jinyejixie.com
JAVA開發(fā)工具eclipse教程
Java開源大全
最佳答案
翁愷-JAVA語言 第*集 本視頻教學(xué)是由浙江大學(xué)著名年輕計(jì)算機(jī)專家翁愷教授主講,一共30集,講得很好,從JAVA的基礎(chǔ)講起,由淺入深,絕對(duì)是精品
sourcePPT\ppt\《Java就業(yè)培訓(xùn)教程》_張孝祥_1_開發(fā)前奏.ppt
sourcePPT\ppt\《Java就業(yè)培訓(xùn)教程》_張孝祥_2_語言基礎(chǔ).ppt
java課程設(shè)計(jì)題目及代碼分別是:
1、題目:計(jì)算器。設(shè)計(jì)內(nèi)容是設(shè)計(jì)一個(gè)圖形界面(GUI)的計(jì)算器應(yīng)用程序,完成簡單的算術(shù)運(yùn)算。
設(shè)計(jì)要求是設(shè)計(jì)的計(jì)算器應(yīng)用程序可以完成家法、減法、乘法、除法和取余運(yùn)算。且有小數(shù)點(diǎn)、正負(fù)號(hào)、求倒數(shù)、退格和清零功能。
2、代碼:
數(shù)字按鈕NumberButton類如下:
import java.awt.
import java.awt.event.
import javax.swing.
public class NumberButton extends Button.
{
int number.
public NumberButton(int number).
{
super(""+number).
this.number=number.
setForeground(Color.blue).
}
public int getNumber().
{
return number;
}
}
其它java課程設(shè)計(jì)題目及代碼是:
題目:華容道。編寫一個(gè)按鈕的子類,使用該子類創(chuàng)建的對(duì)象代表華容道中的人物。通過焦點(diǎn)事件控制人物顏色,當(dāng)人物獲得焦點(diǎn)時(shí)顏色為藍(lán)色,當(dāng)失去焦點(diǎn)時(shí)顏色為灰色。
通過鍵盤事件和鼠標(biāo)事件來實(shí)現(xiàn)曹操、關(guān)羽等人物的移動(dòng)。當(dāng)人物上發(fā)生鼠標(biāo)事件或鍵盤事件時(shí),如果鼠標(biāo)指針的位置是在人物的下方(也就是組件的下半部分)或按下鍵盤的“↓“鍵,該人物向下移動(dòng)。向左、向右和向上的移動(dòng)原理類似。
代碼是:
String name[]={"曹操","關(guān)羽","張","劉","馬","許","兵","兵","兵","兵"}.
for(int i=0;iname.length;i++).
{
person[i]=new Person(i,name[i]).
person[i].addKeyListener(this).
person[i].addMouseListener(this).
//? ? ?person[i].addFocusListener(new Person).
add(person[i]).
}
person[0].setBounds(104,54,100,100).
person[1].setBounds(104,154,100,50).
person[2].setBounds(54,154,50,100).
person[3].setBounds(204,154,50,100).
person[4].setBounds(54,54,50,100).
person[5].setBounds(204,54,50,100);
person[6].setBounds(54,254,50,50);
person[7].setBounds(204,254,50,50);
person[8].setBounds(104,204,50,50);
person[9].setBounds(154,204,50,50);
Tank——坦克大戰(zhàn)(簡潔版)源代碼-------(此文檔是自己在韓順平教程總結(jié)而來)
*????功能:?1.防止敵人的坦克重疊運(yùn)動(dòng)
*?????????????(決定把判斷是否碰撞的函數(shù)寫到EnemyTank類)
*??????????2.可以分關(guān)
*??????????????2.1?(做一個(gè)開始的Panel,它是一個(gè)空的)
*??????????????2.2?開始字體閃爍
*??????????3.可以在玩游戲的時(shí)候,暫停和繼續(xù)
*??????????????3.1當(dāng)用戶點(diǎn)擊暫停時(shí),子彈的速度和坦克速度設(shè)為0,并讓坦克的方向
*?????????????????不要發(fā)生變化。
*??????????4.可以記錄玩家的成績
*??????????????4.1用文件流的方式(小游戲)[大游戲是用的數(shù)據(jù)庫cs,bs結(jié)構(gòu),三國]
*??????????????4.2單寫一個(gè)記錄類,完成對(duì)玩家的記錄
*??????????????4.3先完成保存共擊毀了多少輛敵人坦克的功能
*??????????????4.4存盤退出游戲,可以記錄當(dāng)時(shí)的敵人的坦克坐標(biāo),并可以恢復(fù)
*??????????5.java如何操作聲音文件
*/
JAVA同其它任何一門編程語言一樣,都是要從淺到深的過程,如果你想愉快的學(xué)習(xí)這門語言的話,給你看篇文章,記住JAVA學(xué)習(xí)要有耐心!下面的文章也許對(duì)你有幫助
1. Java語言基礎(chǔ)
談到Java語言基礎(chǔ)學(xué)習(xí)的書籍,大家肯定會(huì)推薦Bruce Eckel的《Thinking in Java》。它是一本寫的相當(dāng)深刻的技術(shù)書籍,Java語言基礎(chǔ)部分基本沒有其它任何一本書可以超越它。該書的作者Bruce Eckel在網(wǎng)絡(luò)上被稱為天才的投機(jī)者,作者的《Thinking in C++》在1995年曾獲SoftwareDevelopment Jolt Award最佳書籍大獎(jiǎng),《Thinking in Java》被評(píng)為1999年Java World“最愛讀者歡迎圖書”,并且贏得了編輯首選圖書獎(jiǎng)。作者從1986年至今,已經(jīng)發(fā)表了超過150篇計(jì)算機(jī)技術(shù)文章,出版了6本書(其中4本是關(guān)于C++的),并且在全世界做了數(shù)百次演講。他是《Thinking in Java》、《Thinking in C++》、《C++ Inside Out》《Using C++》和《Thinking in Patterns》的作者,同時(shí)還是《Black Belt C++》文集的編輯。他的書被讀者稱為“最好的Java參考書……絕對(duì)讓人震驚”;“購買Java參考書最明智的選擇”;“我見過的最棒的編程指南”。作者的非凡才華,極其跨越語言的能力,使作者被選為Java發(fā)展10年間與Java關(guān)系最密切的10個(gè)人物之一。
《Thinking in Java》講述了Java語言的方方面面,很多Java語言的老手都評(píng)價(jià)“這是一本將Java語言講得相當(dāng)丑陋的書”。該書談及了java語言的很多細(xì)節(jié),每一個(gè)方面都是相當(dāng)深刻的。通過本書你可以看到“丑陋的”java語言。
網(wǎng)絡(luò)上關(guān)于java語言講解的視頻很多很多,其中不凡有垃圾?!段虗稹狫AVA語言》可能是你學(xué)習(xí)java語言基礎(chǔ)的唯一選擇,該講座基本按照《Thinking in Java》這本書講解,其中不凡有翁老師的很多有意思的笑話。我很幸運(yùn)學(xué)習(xí)就是從此視頻開始的。內(nèi)容包括30講,我總共看了3遍。
不過,對(duì)于初學(xué)者我不太推薦使用《Thinking in Java》,我比較推薦Prentice Hall PTR 的《Core Java 2》國內(nèi)稱為《Java 2 核心技術(shù)》,目前是第七版。網(wǎng)絡(luò)上大家都可以下載到電子版。Oreilly的《Java in a nutshell》也是一個(gè)不錯(cuò)的選擇。讀完以上兩本后,你可以看看翁愷老師的視頻,接著可以研究《Thinking in Java》了。
2. Java數(shù)據(jù)結(jié)構(gòu)
市面上關(guān)于Java數(shù)據(jù)結(jié)構(gòu)的書本身就很少很少。大致有APress 的《Java Collections》,Jones 和Bartlett 的《Data Structures in Java》、《Object-oriented Data Structures Using Java》以及Prentice Hall 出版的《Data Structures and Algorithms in Java》 (Dec 19, 2005)還有一本就是《Data Structures And Algorithms With Object-oriented Design Patterns In Java》。很幸運(yùn)我的第一本英文書就是APress 的《Java Collections》(本書在國內(nèi)可能根本就沒有中文版――只能下載英文版了),很不錯(cuò),講得很有條例、很簡單,是一本完完全全Java Collections API介紹的書籍,其中不凡有擴(kuò)展API的例子。這是我推薦你學(xué)習(xí)java數(shù)據(jù)結(jié)構(gòu)的唯一一本好書。其它的Jones 和Bartlett的那兩本國內(nèi)好像有一本中文版,想看你也可以看看。
在學(xué)習(xí)完API后,你可以看看java.util包中對(duì)應(yīng)的類了。不過只有在學(xué)習(xí)過設(shè)計(jì)模式后你才有可能完全理解整個(gè)Java Collections Framework。Java Collections Framework使用了很多著名的設(shè)計(jì)模式如:迭代器(Iterator)模式,工廠方法模式、裝飾器模式、適配器模式等等。通過研究java.util包中數(shù)據(jù)結(jié)構(gòu)的源代碼,你可以知道臭名昭著的Properties類的設(shè)計(jì)了,同時(shí)可能基本具備設(shè)計(jì)簡單的數(shù)據(jù)結(jié)構(gòu)的能力了。
所謂學(xué)習(xí)無止境,學(xué)習(xí)完Sun提供了Java Collections Framework后,你可以研究Apche的另一個(gè)Java Collections Framework,很有意思哦?;檠a(bǔ)充的兩個(gè)Framework。
在大家學(xué)習(xí)、研究Java Collections之前,我提示一下Java Collections主要包括以下三部分:接口(Interface)、實(shí)現(xiàn)(Implemention)和算法(Algorithm)。
1. 接口主要有List、Set、Queue和 Map。List 、Se t和Queue是 Collection接口的子接口。
2. 實(shí)現(xiàn)主要是實(shí)現(xiàn)這些接口的具體類。如實(shí)現(xiàn)List接口的ArrayList、LinkedList、Stack和Vector;實(shí)現(xiàn)Set接口的HashSet、TreeSet 和LinkedHashSet;實(shí)現(xiàn)Queue接口的PriorityQueue、SynchronousQueue等等;實(shí)現(xiàn)Map接口的HashMap、TreeMap、Hashtable、Properties、WeakHashMap等等。
3. 算法主要是由Arrays類和Collections類提供的,它是整個(gè)Java Collection Framework算法的核心。支持各種類型的排序,查找等常用操作。
Java Collections中包含兩個(gè)版本的數(shù)據(jù)結(jié)構(gòu),主要是原先的支持同步的數(shù)據(jù)結(jié)構(gòu)和后來不支持同步的數(shù)據(jù)結(jié)構(gòu)。
Java Collection Framework在使用Comparator和Comparable接口支持排序。同時(shí)提供新舊兩個(gè)版本的迭代器Iterator和Enumeraton,以及它們?nèi)绾无D(zhuǎn)換等等。
在java.util包中的Obserable接口和Observer類是考察者模式的核心。
……
3. Java IO
市面上關(guān)于IO的書籍也僅僅只有Oreilly出版社的兩本,都是Elliotte Rusty Harold的著作。兩本書的風(fēng)格基本一致,推薦閱讀是第一版的《Jvava I/O》,講得比較淺顯,內(nèi)容相對(duì)比較集中,實(shí)例也很多。第二版今年5月國外才出版,很有幸我在網(wǎng)絡(luò)上下載了第二版,講得極其詳細(xì)――726頁的大塊頭(我化了兩個(gè)星期),這次將NIO和IO和在一起,還包括J2ME部分的,不過串口、并口通信部分好像類庫支持不夠,自己不能實(shí)際操作。
與第一版的《Jvava I/O》一起的Oreilly還有一本《Jvava NIO》,也是很不錯(cuò)的哦。
大家在依次閱讀完《Jvava I/O》以及《Jvava NIO》后,可以研究java.io包中的源代碼了。在大家研究源代碼前我給點(diǎn)提示:
Java的io包主要包括:
1. 兩種流:字節(jié)流(byte Stream)和字符流(character stream),這兩種流不存在所謂的誰代替誰、誰比誰高級(jí)之說,它們互為補(bǔ)充,只是側(cè)重點(diǎn)不同而已。
2. 兩種對(duì)稱:1.字節(jié)流、字符流的對(duì)稱;2.輸入、輸出的對(duì)稱。
3. 一個(gè)橋梁:將字節(jié)流轉(zhuǎn)變?yōu)樽址鞯腎nputStreamReader和OutputStreamWriter。
其中必須注意:
1. PipedInputStream和PipedOutputStrem是兩個(gè)比較有趣的類。
2. 支持Buffered的流是我們經(jīng)常使用的類。
3. 裝飾器(Decorator)模式在java最著名的應(yīng)用就是用于io的設(shè)計(jì)。仔細(xì)研究各個(gè)Filter流與具體流的關(guān)系,多看設(shè)計(jì)模式的書籍。相信你會(huì)有所所獲。
4. 學(xué)習(xí)好io包,是研究net包,rmi包……的基礎(chǔ)哦!
4 . Java數(shù)據(jù)庫
數(shù)據(jù)庫的書籍太多太多了,也是太爛太爛了!這方面的書我基本都研究過,推薦的你就看看Apress的《JDBC Recipes A Problem Solution Approach 》很不錯(cuò),國外2005年底才出版,(國內(nèi)好像沒有中文版,不過出了中文版也不一定值得看――國內(nèi)經(jīng)常將國外的書翻譯得一塌糊涂、不堪入目)不過我們真的很幸運(yùn),網(wǎng)絡(luò)上有電子版的。值得一看。推薦我看的第一本比較滿意的――Wiley出版的《Java Database Bible》,講得很不錯(cuò)!Sun公司自己的關(guān)于JDBC API介紹的那一本《JDBC API Tutorial andRefernece》也不錯(cuò)。我第二本JDBC的就是研究的這套API。
不過目前這些書都是一些相對(duì)比較浮淺的API應(yīng)用的書籍。有機(jī)會(huì)我會(huì)給大家?guī)斫榻BJDBC API以及JDBC實(shí)現(xiàn)內(nèi)部細(xì)節(jié)的書!我盡快努力,同時(shí)希望得到大家的支持!
順便給學(xué)習(xí)JDBC的朋友一點(diǎn)提示:
JDBC的學(xué)習(xí)和使用主要是這套API,其使用過程也是極其簡單,下面是使用JDBC的一般流程:
1. 加載某個(gè)數(shù)據(jù)庫的驅(qū)動(dòng)(Driver類),通常使用Class.forName(“驅(qū)動(dòng)的類名“);
2. 連接數(shù)據(jù)庫――
Connection con = DriverManager.getConnection(url,username,password);
3. 得到會(huì)話――Statement stmt = con.createStatement();
4. 執(zhí)行操作――Result rs = stmt.executeQuery(“SQL查詢語句”);
5. 處理結(jié)果――
while(rs.next()){
String col1 = rs.getString(1);
……
}
簡單吧!整個(gè)JDBC中可以變化的一般是:
1. 可以由Connection對(duì)象創(chuàng)建Statement、PreparedStatement和CallableStatement創(chuàng)建三種類型的Statement。
2. 可以創(chuàng)建多種類型的ResultSet:支持單向移動(dòng)和個(gè)自由移動(dòng);可更新的和不可更新的;支持不同等級(jí)的交易的…..
3. 數(shù)據(jù)輸入的批處理。
4. 結(jié)果集中特殊類型(Blob、Clob、Arrary和Ref、Struct)列的操作。
5. 這些特殊類型的錄入數(shù)據(jù)庫。
6. javax.sql包中特殊結(jié)果集(CachedRowSet、JdbcRowSet、WebRowSet)的操作。
7. 其它的就是一個(gè)DataSource了,也很簡單!一個(gè)J2EE中的被管理對(duì)象
簡單吧!相信大家很快就會(huì)征服JDBC。
5. Java 網(wǎng)絡(luò)編程
網(wǎng)絡(luò)編程――一個(gè)神秘的、充滿挑戰(zhàn)的方向。不過在談Java網(wǎng)絡(luò)編程之前首先感謝Sun公司的開發(fā)人員,因?yàn)樗鼈兲觳诺脑O(shè)想,充滿智慧的架構(gòu),使廣大java程序員學(xué)習(xí)java網(wǎng)絡(luò)編程變得異常簡單。
Java網(wǎng)絡(luò)編程方面的書,我推薦O'Reilly的《Java Network Programming》,目前已經(jīng)第三版了,以前的版本市面上肯定有!網(wǎng)絡(luò)上早有第三版的電子版,國外2004年出版,706頁哦!講得很全,比較深入,太深入的可能由于Sun有些東西沒有完全公開,所以也就不好講了,有興趣的可以下載看看!第二本還是O'Reilly 1998年出版的《Java distributed computing 》,基礎(chǔ)部分寫得比較詳細(xì),后面的實(shí)例還是值得研究的。
在大家閱讀這些書之前,給大家一點(diǎn)提示:
java網(wǎng)絡(luò)編程其實(shí)相對(duì)比較簡單,入門也很快很快。java網(wǎng)絡(luò)編程主要包括兩個(gè)部分:1.Socket;2.URL部分。不過第二部分也完全建立在第一部分的基礎(chǔ)上。
1. Socket包括客戶端的Socket和服務(wù)器端的ServerSocket。還有就是DatagramSocket和DatagramPacket,它對(duì)應(yīng)于UDP通信協(xié)議。 總之,Socket部分是建立其它高級(jí)協(xié)議的基礎(chǔ)。
2. URL類是一個(gè)網(wǎng)絡(luò)資源定位器,通常和具體的網(wǎng)絡(luò)協(xié)議如HTTP,F(xiàn)TP,Telnet……相關(guān)。通過該類可以連接網(wǎng)絡(luò)上的資源,通過其openStream可以以io包中的流(InputStream)的形式讀取網(wǎng)絡(luò)資源;通過其OpenConnection方法,可以打開一個(gè)連接,在此連接上可以不僅可以完成讀的操作,還可以完成寫的操作。
Java的網(wǎng)絡(luò)編程大體包括以上兩部分。網(wǎng)絡(luò)編程和IO以及多線程部分非常密切,在學(xué)習(xí)此部分前大家一定對(duì)這兩部分了解比較透徹。
學(xué)習(xí)了以上部分你可以研究java.net包中的與此相關(guān)的源代碼了!研究所有的源代碼還為時(shí)尚早。在整個(gè)net包中包含:ContentHandlerFactory、URLStreamHandlerFactory、URLStreamHandler、URLClassLoader等輔助類,它們構(gòu)成了java.net網(wǎng)絡(luò)編程的框架,通過研究其源代碼,你不僅可以快速理解java.net包,還可以為以后擴(kuò)展該包打下基礎(chǔ),甚至可以將此思維方式運(yùn)用到自己的項(xiàng)目中。
到此為止你對(duì)java.net包應(yīng)該才了解60%,還有一部分你可以使用JDecompiler之類的反編譯軟件打開你JDK安裝目錄下\jdkxxx\jre\lib目錄中的rt.jar,用WinRAR之類的軟件打開它的sun.net包,反編譯所有的文件,它是URL類工作的細(xì)節(jié)。當(dāng)研究完該sun.net包,你就會(huì)對(duì)整個(gè)網(wǎng)絡(luò)編程很熟悉很熟悉了。
一切看起來我們已經(jīng)對(duì)網(wǎng)絡(luò)編程很精通了。其實(shí)不然,剛剛開始而已,要想深入,請(qǐng)繼續(xù)吧!網(wǎng)絡(luò)上很多優(yōu)秀的網(wǎng)絡(luò)編程庫甚至軟件可以為我們“添加功力”。如Apache的HttpCore和HTTPConnection 是兩個(gè)和HTTP協(xié)議相關(guān)庫;JGroups是研究分布式通信、群組通信的必讀庫;接著我們可以研究P2P的軟件包,如Sun公司的JXTA,它可能是java平臺(tái)點(diǎn)對(duì)點(diǎn)通信未來的標(biāo)準(zhǔn)哦!接著你可以研究成熟得不得了,使用極其廣泛得P2P軟件Azureus!可以下載到!
千里之行始于足下!Just do it ?。壳拔乙仓谎芯苛薾et包,其它的會(huì)在不久的將來繼續(xù)深入。Sun公司因?yàn)槟承┰驔]有公開net的其它實(shí)現(xiàn)細(xì)節(jié),在其允許將其源代碼以文字的形式加以研究,以及允許將其沒有公開的實(shí)現(xiàn)寫入書中時(shí),我很希望能出一本java網(wǎng)絡(luò)編程的書籍,以飧廣大讀者?。。?/p>
6. Servlet和JSP
Servlet、JSP的書也是滿地都是!值得推薦的也僅僅兩三本。實(shí)推Addison Wiley的《Servlets and JavaServer pages :The J2EE Technology Web Tier》,又是一本很厚的哦!國外2003年出版、784頁,講得比較全,例子也很多,特別是第八章Filter,舉了幾個(gè)不錯(cuò)的例子。其它所有我看到的關(guān)于Servlet和JSP的書都沒有如此深入的?。赡苡形覜]有看到而已)。O’reilly的《Java Servlet Programming》和《Java Server Pages》相對(duì)比較好懂一些,可以讀讀!
在大家學(xué)習(xí)Servlet和Jsp之前我還是要提醒一下:
本質(zhì)上說Servlet就是一個(gè)實(shí)現(xiàn)Servlet接口的、部署于服務(wù)器端的服務(wù)器端的程序罷了!它可以象寫其它任何java應(yīng)用程序一樣編寫,它可以操作數(shù)據(jù)庫、可以操作本地文件、可以連接本地EJB……編寫Servlet程序的一般流程為:
1. 繼承一個(gè)HttpServlet類;
2. 覆蓋其doGet、doPost方法;
3. 在覆蓋方法的內(nèi)部操作方法參數(shù)HttpServletRequest和HttpServletResponse。
4. 讀取請(qǐng)求利用HttpServletRequest。利用HttpServletRequest你可以操作Http協(xié)議的協(xié)議頭、可以得到請(qǐng)求的操作方法、可以得到請(qǐng)求的路徑、可以得到請(qǐng)求的字符串、以及和請(qǐng)求客戶相關(guān)的信息,更主要的你可以得到Cookie和HttpSession這兩個(gè)對(duì)象。
5. 利用Cookie你可以操作“甜心”對(duì)象或者將其寫入HttpServletResponse中。
6. 向客戶輸出信息可以使用HttpServletResponse。使用HttpServletResponse可以寫入各種類型的協(xié)議頭、可以增加Cookie、可以重定向其它URL、可以向客戶發(fā)送Http協(xié)議的狀態(tài)碼。
7. 利用HttpSession在會(huì)話內(nèi)完成你想實(shí)現(xiàn)的任何功能。
同時(shí)Servlet還提供了一些事件和事件監(jiān)聽器(簡單的觀察者模式而已)。還有就是過濾器(Filter)和包裝器(ServletRequestWrapper、ServletResponseWrapper)――簡單的流的使用和裝飾器模式的使用。
學(xué)習(xí)Sevlet、JSP必然要部署到服務(wù)器中,記住通常文件部署的步驟和參數(shù)的設(shè)置以及在程序中如何使用就可以了。
完全理解Servlet后,學(xué)習(xí)jsp相對(duì)比較容易了!Jsp完全建立在Servlet的基礎(chǔ)上,它是為了迎合那些喜歡在Html文檔中嵌入腳本(如:PHP之類的網(wǎng)頁編程語言)的程序員的需要罷了!學(xué)起來也相當(dāng)?shù)娜菀祝?/p>
一切看起來似乎那么的風(fēng)平浪靜,簡單好學(xué)!簡單的表象背后有其復(fù)雜的機(jī)理。要想對(duì)Servlet和Jsp徹底研究,你得研究Tomcat等開源軟件的具體實(shí)現(xiàn)。它無非就是一個(gè)服務(wù)器,在客戶利用網(wǎng)頁通過HTTP協(xié)議向服務(wù)器發(fā)送請(qǐng)求后,服務(wù)器將此HTTP請(qǐng)求轉(zhuǎn)化為相應(yīng)的HttpServletRequest對(duì)象,調(diào)用你編寫的Servlet罷了,在你的Servlet中你肯定操作了此HttpServletRequest了吧,同時(shí)操作了HttpServletResponse了吧,服務(wù)器就將此HttpServletResponse按照HTTP協(xié)議的要求利用HTTP協(xié)議發(fā)送給你的瀏覽器了!在服務(wù)器端的Jsp網(wǎng)頁在被客戶請(qǐng)求后,Tomcat會(huì)利用編譯軟件,使用javax.servlet.jsp包中的模板,編譯此jsp文件,編譯后就是一個(gè)Servlet!以后的操作和Servlet完全一樣哦!
在Servlet和Jsp的基礎(chǔ)上出現(xiàn)了,所謂的高級(jí)技術(shù):JSTL,Struts……無非就是一些標(biāo)簽和MVC模式的使用。
繼續(xù)前進(jìn)吧!勝利就在前方??!
7. 多線程
一個(gè)看起來很神秘,卻很容易上手、很難精通的方向!
我推薦兩本我感覺很好的書籍。首先是我第一本能上手看的這方面的書,Sams 1998年出版的《Java Thread Programming》,寫得暴好,很容易讀懂,我有空還時(shí)??串?dāng)時(shí)的筆記!要知道怎么好你自己看吧!第二本OReilly三次出版的《Java Threads》,最新是2004版,國內(nèi)好像有中文版,推薦你還是看英文版的吧!書中談到了與多線程相關(guān)的N個(gè)方向,如IO、Swing、Collection等等。
給大家一點(diǎn)提示吧!java類庫中與多線程相關(guān)的類不是很多,主要有:Thread、ThreadGroup以及ThreadLocal和InheritableThreadLocal四個(gè)類和一個(gè)Runnable接口;關(guān)鍵字synchronize、volatile ;以及Object對(duì)象的wait、notify、notifyAll方法!
1 Thread是多線程的核心類,提供了一系列創(chuàng)建和操作多線程的方法。
2 ThreadGroup是一個(gè)管理Thread的工具類。
3 ThreadLocal和InheritableThreadLocal為Thread提供了一個(gè)類似保險(xiǎn)箱功能的存儲(chǔ)線程對(duì)象的類!
4 Runnable不用說了吧!
5 synchronize是同步方法和同步塊的核心哦!多個(gè)線程調(diào)用此方法時(shí),只有一個(gè)線程可以使用此方法,其它方法阻塞,從而保證被操作對(duì)象內(nèi)部狀態(tài)完整性。某個(gè)線程調(diào)用帶有synchronize的方法或塊時(shí)會(huì)得到該對(duì)象的對(duì)象鎖,完成塊中的操作后釋放此對(duì)象鎖,從而其它對(duì)象可以繼續(xù)操作。
6 wait、notify、notifyAll提供了有效的等待/通知機(jī)制。Java語言中每一個(gè)對(duì)象都有一個(gè)休息室,任何線程在其操作的對(duì)象的狀態(tài)不滿足的情況下,在該對(duì)象的休息室中休息,釋放對(duì)象鎖;當(dāng)其它線程操作該對(duì)象后,喚醒休息室中的線程,它們?cè)贆z查條件,當(dāng)條件滿足后,執(zhí)行相應(yīng)的操作。
多線程大致就這么多基礎(chǔ)的!簡單嗎!這對(duì)于一個(gè)真正的程序員應(yīng)該是不夠的,真正對(duì)多線程要有所掌握,請(qǐng)您研究java.util.concurrent包吧!大師Doug Lea的作品,原先是一個(gè)開源的一致性編程的庫,后來被Sun公司并入java類庫。作者的網(wǎng)站上也有另外一個(gè)版本的該類庫!值得研究的好東西!Hibernation、OpenJMS等開源軟件都使用了此包!
8. 設(shè)計(jì)模式
談到設(shè)計(jì)模式很多人多會(huì)推薦GOF的那本,該書在Amzon上是五星級(jí)的推薦書籍。不過對(duì)于學(xué)習(xí)java沒多久的、特別是java初學(xué)者,我很不推薦這本書。主要是該書的例子基本都是C++的,很多細(xì)節(jié)沒有講述得足夠清楚。
我給大家推薦的第一本是閻宏博士的《Java 與模式》,它是第一本中國人自己寫的關(guān)于設(shè)計(jì)模式的書籍,寫的比較有趣,融合了很多中華民族的文化和觀念,例子、類圖都比較多,且相對(duì)簡單!非常不錯(cuò)的入門書籍――又是大塊頭哦!
其次我推薦Wiley出版社出版的《Pattern In Java》一套三本,我才看了第一本,好像第二本不怎么樣,第三本還不錯(cuò)!
第三本是中文翻譯版的關(guān)于多線程模式的(很難得的中文翻譯版)中國鐵道出版社2003年出版的《Java多線程設(shè)計(jì)模式》,將多線程模式講得非常淺顯,配有大量的圖例,每章都有習(xí)題,最后有答案!我研究多線程模式就是由它開始的!
第四本,今年出版的Head First系列的《Head First Design Pattern》,秉承Head First系列圖書的優(yōu)點(diǎn),大量的類圖、豐富的實(shí)例、有趣的注解,值得購買!
其次在J2EE方向你可以研究閱讀Addison Wesley 2002年出版的《Patterns of Enterprise Application Architecture》,眾多大腕的作品,講企業(yè)消息集成的!Sun提供的《J2EE PATTERNS SL500》也很好!晚了推薦那一本Amzon 4星半的《Holub on patterns》,大師的作品,提供了,很值得研究的例子,不過對(duì)上面四本不是很熟悉的讀者,最好不要讀它!可能會(huì)讓你比較累!
我學(xué)習(xí)設(shè)計(jì)模式經(jīng)過一段很曲折的路線,前前后后大約看了20本,閻宏博士的《Java 與模式》我看了4遍,還排除我第一次基本沒看懂的看!記得研一時(shí)老師給我們講了GOF的那本,作為選修課,我和它們計(jì)算機(jī)系的碩士、博士們一起,到最后一個(gè)班40-50個(gè)人,不超過3個(gè)人明白,我也沒有明白任何一點(diǎn)(基礎(chǔ)差吧――主要我對(duì)C++語言一點(diǎn)都不了解),憑我不伏輸?shù)男愿?,我認(rèn)為我對(duì)java語言理解還可以,我就借了《Java 與模式》,結(jié)果還是基本沒看懂。很有幸的是讀研三時(shí),聽過了上交大饒若楠老師關(guān)于Java OOP語言的講座,我懂了組合書籍模式等三種設(shè)計(jì)模式后,對(duì)其它模式有了強(qiáng)烈的興趣和要征服它的愿望!工作后我買的第一本就是《Java 與模式》,第一遍花了2個(gè)月研究了這個(gè)1000多頁的大塊頭,后來第三遍15天左右就可以搞定,筆記記了一大本!從此一發(fā)不可收拾。
選對(duì)書、埋頭研究。相信很快就會(huì)入門的!
學(xué)習(xí)Java語言8個(gè)簡單的部分,這只是我們研究Java語言的開始!這些都懂了充其量一個(gè)java程序員而已,后面的路很長很長!我們可以繼續(xù)研究數(shù)據(jù)庫實(shí)現(xiàn)的源代碼、Servlet服務(wù)器的源代碼、RMI、EJB、JNDI、面向方面編程、重構(gòu)、ANT工具、Eclipse工具、Spring工具、JBoss、JOnAS、Apache Geronimo等J2EE服務(wù)器!研究了這些你可能會(huì)成為一個(gè)出色的J2EE Architecture!你可以繼續(xù)研究剖析器、編譯器、JNODE(java寫的操作系統(tǒng))……
感謝大家有此耐心,聽我羅羅嗦嗦大半天!感謝大家的閱讀,感謝群里的朋友!這篇文章主要應(yīng)群里朋友的呼聲――不知道如何選書、不知道從何看起!大半天的功夫完成趕此文章,字句上難免有失誤,同時(shí)由于能力有限不凡有錯(cuò)誤!請(qǐng)閱讀后批評(píng)指正!
上面基本是我研究java語言的順序,以上書籍都是我閱讀過的,不存在替任何出版社宣傳的成分!有的方法可能不適合你,假如你能收獲一點(diǎn),兩點(diǎn)甚至更多,請(qǐng)你不要吝嗇推薦給你的朋友――共同學(xué)習(xí)!
感謝大家的閱讀;感謝互聯(lián)網(wǎng)的設(shè)計(jì)者;感謝java的設(shè)計(jì)師;感謝和網(wǎng)站!
最簡單的java代碼肯定就是這個(gè)了,如下:
public class MyFirstApp
{
public static void main(String[] args)
{
System.out.print("Hello world");
}
}
“hello world”就是應(yīng)該是所有學(xué)java的新手看的第一個(gè)代碼了。如果是零基礎(chǔ)的新手朋友們可以來我們的java實(shí)驗(yàn)班試聽,有免費(fèi)的試聽課程幫助學(xué)習(xí)java必備基礎(chǔ)知識(shí),有助教老師為零基礎(chǔ)的人提供個(gè)人學(xué)習(xí)方案,學(xué)習(xí)完成后有考評(píng)團(tuán)進(jìn)行專業(yè)測(cè)試,幫助測(cè)評(píng)學(xué)員是否適合繼續(xù)學(xué)習(xí)java,15天內(nèi)免費(fèi)幫助來報(bào)名體驗(yàn)實(shí)驗(yàn)班的新手快速入門java,更好的學(xué)習(xí)java!
網(wǎng)站題目:翁愷java課程代碼 翁愷的java
文章源于:http://jinyejixie.com/article24/hpcice.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)、全網(wǎng)營銷推廣、企業(yè)網(wǎng)站制作、、網(wǎng)站收錄、App設(shè)計(jì)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)