dream-in-fly
路上... |
IRVINE, Calif. - June 06, 2005 - Blizzard Entertainment? today announced that World of Warcraft?, its massively multiplayer online role-playing game (MMORPG), has officially launched in China. Players in China can now download the game, create accounts and experience the epic adventure of the Warcraft? series in an immersive and continually evolving online environment. The commercial launch of World of Warcraft follows a highly successful open beta period in China during which the game reached a peak concurrency - the total number of subscribers playing simultaneously - of more than 500,000 players.
"It has always been a goal at Blizzard to become a major developer and publisher for the Chinese gaming market," said Mike Morhaime, president and co-founder of Blizzard Entertainment. "We feel that China offers a huge and eager audience and it is poised to become the next great region in gaming. We are simply thrilled to be bringing World of Warcraft to this great country. With fully localized content, a regional network infrastructure, and local, around-the-clock customer support, we believe that World of Warcraft will provide Chinese gamers with an unparalleled game experience."
To provide players with an incomparable level of service, Blizzard Entertainment has partnered with local publisher The9, who it believes to be the most talented MMO operator in China. The9 will help operate and manage World of Warcraft in China, including all aspects of support. The9's dedicated team, composed entirely of Chinese management and staff, will serve as an integral part of the game's development and customer service efforts. They will assist in the synchronization of content updates, the delivery of player feedback to the developers, and will help ensure accurate localization to keep the game relevant and tailored to Chinese gamers. Furthermore, this local team will offer 24-hour support year around, with direct game master (GM) support and local call-center representatives dedicated to helping players with questions regarding gameplay and/or technical issues.
To deliver top-notch customer support and maintain a safe and secure service, Blizzard and The9 have implemented an authorization CD-key system for the official launch of World of Warcraft. This system will help protect the game from malicious hack programs that could otherwise affect players' enjoyment of the game.
Only players who have purchased an authorized CD key will be able to activate their accounts and enter the game. Each CD key costs 30 Yuan/RMB and can be purchased with a World of Warcraft Points Card. Point Cards also cost 30 Yuan/RMB and can be used at a rate of 9 points per hour (0.45 Yuan/hour) to play World of Warcraft.
需要包含頭文件:
#include <alloc.h>
或
#include <stdlib.h>
函數(shù)聲明(函數(shù)原型):
void *malloc(int size);
說明:malloc 向系統(tǒng)申請分配指定size個(gè)字節(jié)的內(nèi)存空間。返回類型是 void* 類型。void* 表示未確定類型的指針。C,C++規(guī)定,void* 類型可以強(qiáng)制轉(zhuǎn)換為任何其它類型的指針。
從函數(shù)聲明上可以看出。malloc 和 new 至少有兩個(gè)不同: new 返回指定類型的指針,并且可以自動(dòng)計(jì)算所需要大小。比如:
int *p;
p = new int; //返回類型為int* 類型(整數(shù)型指針),分配大小為 sizeof(int);
或:
int* parr;
parr = new int [100]; //返回類型為 int* 類型(整數(shù)型指針),分配大小為 sizeof(int) * 100;
而 malloc 則必須由我們計(jì)算要字節(jié)數(shù),并且在返回后強(qiáng)行轉(zhuǎn)換為實(shí)際類型的指針。
int* p;
p = (int *) malloc (sizeof(int));
第一、malloc 函數(shù)返回的是 void * 類型,如果你寫成:p = malloc (sizeof(int)); 則程序無法通過編譯,報(bào)錯(cuò):“不能將 void* 賦值給 int * 類型變量”。所以必須通過 (int *) 來將強(qiáng)制轉(zhuǎn)換。
第二、函數(shù)的實(shí)參為 sizeof(int) ,用于指明一個(gè)整型數(shù)據(jù)需要的大小。如果你寫成:
int* p = (int *) malloc (1);
代碼也能通過編譯,但事實(shí)上只分配了1個(gè)字節(jié)大小的內(nèi)存空間,當(dāng)你往里頭存入一個(gè)整數(shù),就會(huì)有3個(gè)字節(jié)無家可歸,而直接“住進(jìn)鄰居家”!造成的結(jié)果是后面的內(nèi)存中原有數(shù)據(jù)內(nèi)容全部被清空。
malloc 也可以達(dá)到 new [] 的效果,申請出一段連續(xù)的內(nèi)存,方法無非是指定你所需要內(nèi)存大小。
比如想分配100個(gè)int類型的空間:
int* p = (int *) malloc ( sizeof(int) * 100 ); //分配可以放得下100個(gè)整數(shù)的內(nèi)存空間。
另外有一點(diǎn)不能直接看出的區(qū)別是,malloc 只管分配內(nèi)存,并不能對所得的內(nèi)存進(jìn)行初始化,所以得到的一片新內(nèi)存中,其值將是隨機(jī)的。
除了分配及最后釋放的方法不一樣以外,通過malloc或new得到指針,在其它操作上保持一致。
阿,我年輕的朋友們,你們想成為游戲設(shè)計(jì)師,所以來問我有何好建議?我會(huì)給你們我最好的建議,但我猜想你們可能會(huì)聽不進(jìn)去。你們可能更愿意聽那些說你們愛聽的話的人所提供的建議。但這對我來說無所謂,我所能做的就是說些實(shí)事,并希望能進(jìn)入某些人的耳朵里。首先,你們應(yīng)該對自己的事業(yè)道路有個(gè)最初的規(guī)劃,你想接受更專門的訓(xùn)練,還是想要更全面的教育?專門的訓(xùn)練能給你某些特別的技能,讓你能一畢業(yè)就進(jìn)入工作。但教育能給你一個(gè)更全面的素質(zhì)培養(yǎng),卻不一定能馬上看到好處,不過長期來看能給你帶來更多的優(yōu)勢。這是個(gè)簡單不過的選擇:速成的路還是戰(zhàn)略規(guī)劃后的路。如果你非常急于求成,那就立馬去那些專門學(xué)校,他們會(huì)教你最新最炫的電腦技術(shù)。精力充沛是年輕人的優(yōu)勢,但耐性決不是年輕人的特長,所以我完全能理解你們幾乎不能忍受去學(xué)習(xí)那些看似無關(guān)的副科。當(dāng)我還是你們年紀(jì)的時(shí)候,我總是對那些大學(xué)里的其他課程感到不耐煩。但現(xiàn)在,我對我當(dāng)初的魯莽想法感到羞愧,并真心的感謝當(dāng)初教導(dǎo)我的師長。
速成的路卻是能立刻見效的路。如果你進(jìn)了一家專門教授電腦游戲制作的學(xué)校,或者在正規(guī)大學(xué)主修電腦游戲設(shè)計(jì)。在此,你會(huì)學(xué)到很多關(guān)于電腦游戲設(shè)計(jì)最新的技術(shù)。畢業(yè)后,你很可能馬上就能在正規(guī)的游戲公司找到一份工作,而這一切你可以在23歲之前搞定。
請打住。在這里有一點(diǎn)需要指出。生產(chǎn)游戲和設(shè)計(jì)游戲是完全不同的。你所獲得的第一份工作肯定是份渺小的工作,比如給一個(gè)無關(guān)緊要的npc畫動(dòng)畫,而這個(gè)npc做的事情只是在背景上漫無目的的閑晃;或者寫一段代碼,這段代碼的用處就是當(dāng)用戶按下exit的時(shí)候,顯示“你確定要退出么?”。如果你很擅長做這些小事情,那不出幾年就可能會(huì)讓你畫些更復(fù)雜的動(dòng)畫或?qū)懸欢胃匾拇a。然后再過幾年,你就可能坐上某個(gè)更重要的位子,處理些更重要的事情。
但請你別指望這些。根本的問題在于:有成百上千甚至上百萬的學(xué)生,就像你們一樣的學(xué)生,正做著同樣的夢,想要進(jìn)游戲業(yè)的夢??紤]一下供求曲線吧,如果職員的供應(yīng)量十倍甚至百倍于員工的需求量,那么價(jià)格曲線將向下傾斜。你們必定將得到可憐的工資,并得不到任何的尊敬。你們當(dāng)然可以抱怨,但得到的回答不僅簡單也很實(shí)在:如果你不喜歡,你可以選擇離開阿,門外有上百個(gè)像你一樣的年輕人想要得到你的工作。
事實(shí)上,這就是當(dāng)前正在發(fā)生的事情。有可能的話你們可以去每年三月或四月在圣何塞舉行的“游戲開發(fā)者大會(huì)”看看,你們并不需要真的去參加什么討論會(huì),只需要在圣何塞的會(huì)議中心轉(zhuǎn)轉(zhuǎn),看看身邊走過的人。你會(huì)發(fā)現(xiàn)兩個(gè)驚人的事實(shí):第一,每個(gè)人都穿著黑色衣服;第二,他們的平均年齡在25至30之間。
我不知道為什么他們都穿著黑色,這可能是每個(gè)人都需要遵守的規(guī)則。但我能告訴你們,為什么他們都這么年輕:因?yàn)槊總€(gè)人都會(huì)在工作幾年之后離開這個(gè)行業(yè)。游戲業(yè)就像是個(gè)奇怪的巨大建筑物,這個(gè)建筑物只有一個(gè)入口,卻有很多個(gè)出口。成千上萬個(gè)年輕人擁擠在入口處,爭先恐后互相推擠著想要進(jìn)門。只有很少一部分能順利進(jìn)入。但對于任何一個(gè)進(jìn)入者來說,總會(huì)有另一個(gè)人離開——這才能讓這個(gè)行業(yè)保持平衡。這個(gè)行業(yè)內(nèi)的人有多么的年輕,就意味著被擠出去的人有多么的快。很少有人能撐到30歲。
如果你想得再深些,那就會(huì)發(fā)現(xiàn)另一個(gè)事實(shí):假設(shè)你是老板,既然有這么多小家伙想要為你做游戲,那你自然可以花一毛錢就雇一群人,像奴隸一樣驅(qū)使他們,直到他們筋疲力盡,然后再找些替代者。你只需雇傭一些管理人員,能保證這些小家伙都努力工作就行。這個(gè)系統(tǒng)運(yùn)轉(zhuǎn)得非常完美。
唯一的問題是,你是否打算成為他們中的一員呢?我希望不是。不過,要是你真狂熱到打算削尖腦袋往游戲業(yè)里鉆,那么就繼續(xù)前進(jìn)!我這個(gè)老笨蛋說再多也是無益。你自己去花時(shí)間看清這些吧。
但在這里我還有另一個(gè)方案可以告訴你們。首先,你應(yīng)該獲得一個(gè)正規(guī)的教育,決不是什么一夜情式的培訓(xùn)。去一所正規(guī)的大學(xué),學(xué)習(xí)任何專業(yè)除了游戲制作。幾乎所有專業(yè)都可以:生物學(xué)、物理學(xué)(我當(dāng)初就是念的這個(gè))、藝術(shù)、文學(xué)、歷史、心理學(xué)、語言學(xué)。你只需保證自己獲得了常規(guī)教育,并盡量選修一些專業(yè)以外的課程,當(dāng)然,你應(yīng)該選修一下計(jì)算機(jī)。
同時(shí),你應(yīng)該開始試驗(yàn)制作游戲了。不要被時(shí)髦流行的圖像技術(shù)所擾——這不能給你的游戲設(shè)計(jì)提供任何幫助。你應(yīng)該專注于游戲的內(nèi)涵:游戲的體系和架構(gòu)。如何用很少的元素就能使整個(gè)游戲運(yùn)轉(zhuǎn)?別幻想能做出像商業(yè)游戲那么好的產(chǎn)品——我要大聲告訴你,這些游戲要依靠很多人的力量才能完成。你此時(shí)所能做的這些小玩意同那些比較起來,只能用“可憐”兩個(gè)字形容。要是把制作游戲比作造汽車,此時(shí)你根本不用管車子的外表涂層和噴漆,你應(yīng)該專注于如何讓活塞協(xié)作運(yùn)轉(zhuǎn)、如何控制閥門的正常閉合、搞清楚汽化器是個(gè)什么東西。你要制造的是個(gè)小卡丁車,而不是一輛勞斯萊斯。所有這些都是個(gè)試驗(yàn)的過程,別幻想你的這些小玩意會(huì)有商業(yè)用途,你要做的就是造好一個(gè)就扔掉一個(gè)——為了增加創(chuàng)造力,你要?dú)⒌裟阕约旱摹昂⒆印薄H绻愠撩杂谶@些作品而不愿放棄,那你將永遠(yuǎn)也不會(huì)擁有一個(gè)真正游戲設(shè)計(jì)師所應(yīng)有的創(chuàng)造力。
繼續(xù)不斷的為增加你的創(chuàng)造力而努力。到目前為止,你的作品根本無法和一個(gè)經(jīng)驗(yàn)老到的游戲設(shè)計(jì)師相抗衡,所以增加自己的能力是你此時(shí)唯一該做的。電影the matrix都看過吧,沒經(jīng)過訓(xùn)練的neo無論如何也不是agent smith的對手。學(xué)任何你能學(xué)到的東西。畢業(yè)前要把你學(xué)校圖書館所有的書架都翻一遍,在這些灰塵的覆蓋下指不定隱藏著什么有趣的東西。
當(dāng)你出了學(xué)校,不要馬上就進(jìn)入游戲業(yè)。在一個(gè)正規(guī)公司找一份像樣的工作,并掙些錢。更主要的是不斷學(xué)習(xí),你要學(xué)很多關(guān)于團(tuán)隊(duì)協(xié)作的方式,也要學(xué)會(huì)如何在眾人面前尋找自己的位置。你應(yīng)該學(xué)會(huì)何時(shí)何地站起來對你的老板說話——雖然這種機(jī)會(huì)不常有。還有,你應(yīng)該學(xué)會(huì)如何同周圍有經(jīng)驗(yàn)的內(nèi)行打交道。
繼續(xù)在你業(yè)余時(shí)間制作游戲,盡可能多的制作各種不同類型的“小卡丁車”,并試圖了解各種類型卡丁車的性能,諸如操縱性、速度以及其他要素。當(dāng)你做了六個(gè)或十個(gè)這種產(chǎn)品,你可能會(huì)想到繼續(xù)親自著手進(jìn)行更大的項(xiàng)目。很好,去找些志同道合的朋友,他們會(huì)幫助你完成你的計(jì)劃,我確信這將是個(gè)令人印象深刻的成果。完成之后,向全世界展示你的小寶貝吧?,F(xiàn)在,你就可以把她作為你簡歷的一部分去申請游戲業(yè)中的職位了。如果你的那些產(chǎn)品確實(shí)好,你將能得到一個(gè)真正的游戲設(shè)計(jì)師職位,而不是去當(dāng)那些小嘍羅。此時(shí)你可能仍然只是其他游戲設(shè)計(jì)師的助手,但你已經(jīng)處在了正確的位置上,如果你能努力出色的完成工作,你肯定會(huì)在游戲業(yè)中擁有前途。
我知道這些并不是你們想聽的內(nèi)容。你們想要的是所謂的速成藥,比如學(xué)習(xí)這個(gè),然后學(xué)習(xí)那個(gè),接下來就能確保得到一份高收入的工作、擁有巨大的辦公室、用著最先進(jìn)的電腦設(shè)備、做的是富有創(chuàng)造性的事情。沒錯(cuò),每個(gè)人都會(huì)這么想的,但沒有人會(huì)得到這些。那些向你描述這些故事的人不過是些騙子,他們腦子里想的只是你口袋里的錢。一個(gè)令人悲傷的事實(shí)是:游戲先驅(qū)們主導(dǎo)世界的日子已經(jīng)過去了,現(xiàn)在的游戲業(yè)是一個(gè)產(chǎn)業(yè),沒人會(huì)突然被發(fā)掘然后一夜之間成為巨星,對任何想入門的人來說,在你面前的必定是一條漫長的路。
你們擁有激情和精力,想要讓不可能變?yōu)榭赡堋5銈兪欠駥@條漫長的路做好了準(zhǔn)備?或者說,你們是否打算在真正的準(zhǔn)備完成前就沖進(jìn)去?
祝你們好運(yùn),孩子們,我相信你們會(huì)成功。
謝謝您-----------chris crawford
現(xiàn)在Eclipse的最新版本是3.0.2,但建議使用3.01M6版本。而EclipseME剛剛推出了0.9.0版本,完全支持Eclipse3.01M6版。
1、下載JDK:http://java.sun.com 下載JDK1.4.2版本?;蛘叽说刂罚?BR>
2、下載J2ME版本:http://java.sun.com 下載。或者此地址:
3、下載Eclipse3.01M6版本:http://www.Eclipse.org 下載?;蛘叽说刂?/FONT>:
ftp://ftp.jaist.ac.jp/pub/eclipse/eclipse/downloads/drops/S-3.1M6-200504011645/eclipse-SDK-3.1M6-win32.zip
4、下載Eclipse3.01M6版本的中文語言包:http://www.Eclipse.org 下載。或者此地址:
http://download.eclipse.org/eclipse/downloads/drops/L-3.0.1_Translations-200409161125/NLpack-eclipse-SDK-3.0.x-win32.zip
5、下載Eclipse3.01M6的J2ME插件EclipseME0.9.0版本:http://www.EclipseME.org 下載?;蛘叽说刂?/FONT>:
http://nchc.dl.sourceforge.net/sourceforge/eclipseme/eclipseme.feature_0.9.0_site.zip
下載完以上五個(gè)文件后,進(jìn)行相應(yīng)順序的安裝。另外:Eclipse的軟件不需要安裝,直接解壓即可,很方便吧。
在遙遠(yuǎn)古希臘的大草原中,馳騁著一批半人半馬的族群,這是一個(gè)生性兇猛的族群?!鞍肴税腭R”代表著理性與非理性、人性與獸性間的矛盾掙扎,這就是人馬部落。部落里唯一的例外射手奇?zhèn)?,是一個(gè)生性善良的男子,他對人坦誠真摯,謙遜有理。因此受到大家的尊敬與愛戴。這時(shí)候,奇?zhèn)惖纳眢w碎成了無數(shù)的小星星,飛到了天上,它們聚集在一起,好象人馬的樣子,那只箭還似乎就在他的胸前。為了紀(jì)念善良的奇?zhèn)?,人們就管這個(gè)星座叫射手座。
從嘉興回來...兄弟沒變多少 呵呵 一樣的忙 線程是一些可以并行的,獨(dú)立的執(zhí)行的代碼.之前我編的程序都只能做一件事情,也就是只有一個(gè)線程.多線程的編程就是可以將程序任務(wù)分成多個(gè)并行的子任務(wù),同時(shí)運(yùn)行,互不干擾.我對多線程的理解是從格斗游戲得來的.格斗游戲中兩人對打就是通過兩個(gè)線程來實(shí)現(xiàn)的吧,否則如何能夠你出你的招,我發(fā)我的沖擊波呢.
(1月18日)突然想到一個(gè)問題,補(bǔ)充一下.多線程是不是我們通常所說的多任務(wù)呢?我的理解是,不能這樣說也可以這樣說.
簡單說來,多線程提供了一種在進(jìn)程內(nèi)部進(jìn)行多個(gè)線程并行調(diào)度的機(jī)制,而多任務(wù)則提供的是在一個(gè)操作系統(tǒng)內(nèi)部運(yùn)行多個(gè)進(jìn)程的機(jī)制.
多任務(wù)操作系統(tǒng)(如Windows)的基本原理是這樣的:操作系統(tǒng)將CPU的時(shí)間片分配給多個(gè)線程,每個(gè)線程在操作系統(tǒng)指定的時(shí)間片內(nèi)完成(注意,這里的多個(gè)線程是分屬于不同進(jìn)程的).操作系統(tǒng)不斷的從一個(gè)線程的執(zhí)行切換到另一個(gè)線程的執(zhí)行,如此往復(fù),宏觀上看來,就好像是多個(gè)線程在一起執(zhí)行.由于這多個(gè)線程分屬于不同的進(jìn)程,因此在我們看來,就好像是多個(gè)進(jìn)程在同時(shí)執(zhí)行,這樣就實(shí)現(xiàn)了多任務(wù).Whoops,真繞口.
如上,多線程和多任務(wù)是有很明顯的區(qū)別的.但是再想一下,在一個(gè)應(yīng)用程序內(nèi)實(shí)現(xiàn)多線程不也是靠CPU分配時(shí)間片嗎?既然原理是相同的,那么多線程也可以說是多任務(wù)的.
一個(gè)Java程序啟動(dòng)后,就已經(jīng)有一個(gè)線程在運(yùn)行,我們可以通過下面的例子來初步建立一個(gè)線程的實(shí)際印象
class testthread{ public static void main(String args[]){ Thread t=Thread.currentThread(); t.setName("This Thread is running"); System.out.println("The running thead:"+t); try{ for(int i=0;i<5;i++) { System.out.println("Sleep time"+i); Thread.sleep(1000);//掛起線程,就是讓線程休息一會(huì)兒, //不占用系統(tǒng)資源,因此其它線程可以繼續(xù). //這里的Thread缺省表示主線程 } }catch(InterruptedException e){System.out.println("thread has wrong");} } } |
這只是一個(gè)線程,那么我們怎么實(shí)現(xiàn)多個(gè)線程呢?又怎樣讓線程做我安排它要做的事情呢?
實(shí)現(xiàn)線程體的構(gòu)造有兩種方法.
第一種方法是通過繼承構(gòu)造線程體.
在Java中專門有一個(gè)Thread類,這個(gè)類里面有一個(gè)函數(shù)run(),里面記錄著線程要完成的操作,就好像通常所說的主函數(shù)main()一樣,run()函數(shù)運(yùn)行完了,線程就結(jié)束了.通過繼承這個(gè)類,我們可以定義我們自己的線程,在run函數(shù)中告訴它該做什么事情.下面的程序就是繼承了一個(gè)SimpleThread類,用兩個(gè)線程來輸出HelloWorld.
public class TwoThread{ |
運(yùn)行的結(jié)果是兩個(gè)線程交替顯示各自的HelloWorld十次,輸出是混在一起的,因?yàn)閮蓚€(gè)線程是同時(shí)運(yùn)行的.
作者:xm4014
今天第一次接觸Java。
雖然以前間或的也看了些書籍,但多是隔靴搔癢,上不了正席,絕不敢說自己懂Java。接觸一門新的技術(shù)和初戀一樣,都是第一次,但不同的是后者一般開始無比甜蜜,結(jié)局卻很痛苦,而前者則往往開始很痛苦,越到后來卻越是有味,簡直是欲罷不能.現(xiàn)在我就正處于這個(gè)很痛苦的階段,連一個(gè)最簡單的Helloworld都運(yùn)行不出來,總是提示Excepion in thread "main" java.lan.NoClassDefFoundError. 只好上網(wǎng)去查,去搜.記性又不好,所以搜出來趕緊保存下來,常備無患.
一般來說安裝完JDK之后,一定要按一下步驟配置,才可正確編譯運(yùn)行(假定jdk版本為1.4.0)
1.將jdk1.4.0-安裝在自己機(jī)器的某個(gè)盤符的根目錄下,如:可安裝在C:\jdk下。
***(以下出現(xiàn)的c:\jdk改為你自己安裝JDK的目錄)***
2.如果你的運(yùn)行環(huán)境是win98,則在C盤根目錄下,autoexec.bat文件中,加入下面兩條語句:
set Path=%PATH%;c:\jdk\bin
set CLASSPATH=.;c:\jdk\lib\dt.jar;c:\jdk\lib\tools.jar
保存后,重新啟動(dòng)機(jī)器,就完成了jdk1.4的安裝。
3.如果你的運(yùn)行環(huán)境是win2000的話,則需在“控制面板”的“系統(tǒng)”下,“高級”選項(xiàng)的“環(huán)境變量”中,添加兩個(gè)用戶變量。
其中一個(gè)用戶變量的名稱為“path”,值為“.;d:\j2sdk1.4.0_01\bin”,
另一個(gè)用戶變量的名稱為"CLASSPATH",值為“.;d"\j2sdk1.4.0_01\lib\dt.jar;d:\j2sdk1.4.0_01\lib\tools.jar”,單擊“確定”即可。即完成了jdk1.4.0的安裝。
至于這樣做的意義何在,我想應(yīng)該是讓Java系統(tǒng)在編譯字節(jié)代碼(.java)的時(shí)候需要一個(gè)什么東東的支持,如果你不告訴它這個(gè)東東放在哪個(gè)地方的話,它就犯傻了?!
看到屏幕上終于顯示出Hello world對我來說意義重大.這是我近一年來寫的第一個(gè)程序!再次踏上程序之路,簡直有恍如隔世的感覺,已經(jīng)快找不準(zhǔn)我的位置了.還好原來學(xué)的一些關(guān)于C++和面向?qū)ο蟮钠っ珱]忘光光,所以費(fèi)點(diǎn)周折熟悉了JDK的環(huán)境之后,接下來的事情就好辦多了,心里也踏實(shí)多了.
用String類直接定義字符串變量比起C中討厭的指針,感覺確實(shí)好的多,用慣了Object Pascal的我,如果再回去數(shù)* *,真要瘋掉不可.
數(shù)組的定義和C,C++好像略有不同,記不清了,先記下來再說
int[] number=new int[5]
String[] message=new String[5]
變量這一部分想起來要交待的也就這么多吧。雖然是菜鳥,但我也知道,總是如譚浩強(qiáng)般在語法上面死摳的人簡直是白癡:大多數(shù)情況下,漂亮的程序根本不需要無謂的點(diǎn)綴,工工整整,思路清晰就可以了.
倒是對于Java程序的框架我倒想備忘一下,一個(gè)簡單的java程序好像是應(yīng)該是這樣的框架
class ProgramName
{
public static void main(String[] args)
{
file://程序的主體
}
public static int othermethod()
{
file://其它方法
}
}
整個(gè)程序在一個(gè)大的類中,這個(gè)類的概念應(yīng)該就跟pascal里面的單元差不多的。同pascal一樣,文件名也要與單元名-在這里是類名-一樣.Java對大小寫要求的非常嚴(yán)格,我語法錯(cuò)了好幾次都是因?yàn)檫@個(gè).
Java程序就是由一個(gè)或者多個(gè)或者很多個(gè)方法在這樣一個(gè)大類當(dāng)中組成的.
在如上的代碼中,定義方法的參數(shù)表示的意思分別為:
public表示此成員函數(shù)是公有的,可以被其他類直接調(diào)用
static表示main成員函數(shù)在ProgramName類的所有對象中是唯一的,Java將為其分配永久存儲空間
過幾天要去東星軟件筆試程序員,要求挺高的 網(wǎng)上找了篇筆試的文章Java基礎(chǔ)方面:
1、作用域public,private,protected,以及不寫時(shí)的區(qū)別
答:區(qū)別如下:
作用域?????????? 當(dāng)前類?????? 同一package? 子孫類?????? 其他package
public??????????? √????????????? √????????????????? √???????????? √
protected??????? √????????????? √????????????????? √???????????? ×
friendly????????? √????????????? √?????????????????? ×??????????? ×
private?????????? √????????????? ×?????????????????? ×??????????? ×
不寫時(shí)默認(rèn)為friendly
2、ArrayList和Vector的區(qū)別,HashMap和Hashtable的區(qū)別
答:就ArrayList與Vector主要從二方面來說.
一.同步性:Vector是線程安全的,也就是說是同步的,而ArrayList是線程序不安全的,不是同步的
二.數(shù)據(jù)增長:當(dāng)需要增長時(shí),Vector默認(rèn)增長為原來一培,而ArrayList卻是原來的一半
就HashMap與HashTable主要從三方面來說。
一.歷史原因:Hashtable是基于陳舊的Dictionary類的,HashMap是Java 1.2引進(jìn)的Map接口的一個(gè)實(shí)現(xiàn)
二.同步性:Hashtable是線程安全的,也就是說是同步的,而HashMap是線程序不安全的,不是同步的
三.值:只有HashMap可以讓你將空值作為一個(gè)表的條目的key或value
3、char型變量中能不能存貯一個(gè)中文漢字?為什么?
答:是能夠定義成為一個(gè)中文的,因?yàn)閖ava中以unicode編碼,一個(gè)char占16個(gè)字節(jié),所以放一個(gè)中文是沒問題的
4、多線程有幾種實(shí)現(xiàn)方法,都是什么?同步有幾種實(shí)現(xiàn)方法,都是什么?
答:多線程有兩種實(shí)現(xiàn)方法,分別是繼承Thread類與實(shí)現(xiàn)Runnable接口
同步的實(shí)現(xiàn)方面有兩種,分別是synchronized,wait與notify
5、繼承時(shí)候類的執(zhí)行順序問題,一般都是選擇題,問你將會(huì)打印出什么?
答:父類:
package test;
public class? FatherClass
{
??? public FatherClass()
?{
??System.out.println("FatherClass Create");
?}
}
子類:
package test;
import test.FatherClass;
public class? ChildClass extends FatherClass
{
?public ChildClass()
?{
??System.out.println("ChildClass Create");
?}
?public static void main(String[] args)
?{
??FatherClass fc = new FatherClass();
??ChildClass cc = new ChildClass();
?}
}
輸出結(jié)果:
C:\>java test.ChildClass
FatherClass Create
FatherClass Create
ChildClass Create
6、內(nèi)部類的實(shí)現(xiàn)方式?
答:示例代碼如下:
package test;
public class? OuterClass
{
?private class InterClass
?{
??public InterClass()
??{
???System.out.println("InterClass Create");
??}
?}
?public OuterClass()
?{
??InterClass ic = new InterClass();
??System.out.println("OuterClass Create");
?}
?public static void main(String[] args)
?{
??OuterClass oc = new OuterClass();
?}
}
輸出結(jié)果:
C:\>java test/OuterClass
InterClass Create
OuterClass Create
再一個(gè)例題:
public class OuterClass {
? private double d1 = 1.0;
??? //insert code here
}
You need to insert an inner class declaration at line 3. Which two inner class declarations are
valid?(Choose two.)
A. class InnerOne{
???? public static double methoda() {return d1;}
?? }
B. public class InnerOne{
???? static double methoda() {return d1;}
?? }
C. private class InnerOne{
???? double methoda() {return d1;}
?? }
D. static class InnerOne{
???? protected double methoda() {return d1;}
?? }
E. abstract class InnerOne{
???? public abstract double methoda();
?? }
說明如下:
一.靜態(tài)內(nèi)部類可以有靜態(tài)成員,而非靜態(tài)內(nèi)部類則不能有靜態(tài)成員。 故 A、B 錯(cuò)
二.靜態(tài)內(nèi)部類的非靜態(tài)成員可以訪問外部類的靜態(tài)變量,而不可訪問外部類的非靜態(tài)變量;return d1 出錯(cuò)。
故 D 錯(cuò)
三.非靜態(tài)內(nèi)部類的非靜態(tài)成員可以訪問外部類的非靜態(tài)變量。 故 C 正確
四.答案為C、E
7、垃圾回收機(jī)制,如何優(yōu)化程序?
希望大家補(bǔ)上,謝謝
8、float型float f=3.4是否正確?
答:不正確。精度不準(zhǔn)確,應(yīng)該用強(qiáng)制類型轉(zhuǎn)換,如下所示:float f=(float)3.4
9、介紹JAVA中的Collection FrameWork(包括如何寫自己的數(shù)據(jù)結(jié)構(gòu))?
答:Collection FrameWork如下:
Collection
├List
│├LinkedList
│├ArrayList
│└Vector
│ └Stack
└Set
Map
├Hashtable
├HashMap
└WeakHashMap
Collection是最基本的集合接口,一個(gè)Collection代表一組Object,即Collection的元素(Elements)
Map提供key到value的映射
10、Java中異常處理機(jī)制,事件機(jī)制?
11、JAVA中的多形與繼承?
希望大家補(bǔ)上,謝謝
12、抽象類與接口?
答:抽象類與接口都用于抽象,但是抽象類(JAVA中)可以有自己的部分實(shí)現(xiàn),而接口則完全是一個(gè)標(biāo)識(同時(shí)有多重繼承的功能)。
13、Java 的通信編程,編程題(或問答),用JAVA SOCKET編程,讀服務(wù)器幾個(gè)字符,再寫入本地顯示?
答:Server端程序:
package test;
import java.net.*;
import java.io.*;
public class Server
{
?private ServerSocket ss;
?private Socket socket;
?private BufferedReader in;
?private PrintWriter out;
?public Server()
?{
??try
??{
???ss=new ServerSocket(10000);
???while(true)
???{
????socket = ss.accept();
????String RemoteIP = socket.getInetAddress().getHostAddress();
????String RemotePort = ":"+socket.getLocalPort();
????System.out.println("A client come in!IP:"+RemoteIP+RemotePort);
????in = new BufferedReader(new
InputStreamReader(socket.getInputStream()));
????String line = in.readLine();
????System.out.println("Cleint send is :" + line);
????out = new PrintWriter(socket.getOutputStream(),true);
????out.println("Your Message Received!");
????out.close();
????in.close();
????socket.close();
???}
??}catch (IOException e)
??{
???out.println("wrong");
??}
?}
?public static void main(String[] args)
?{
??new Server();
?}
};
Client端程序:
package test;
import java.io.*;
import java.net.*;
public class Client
{
?Socket socket;
?BufferedReader in;
?PrintWriter out;
?public Client()
?{
??try
??{
???System.out.println("Try to Connect to 127.0.0.1:10000");
???socket = new Socket("127.0.0.1",10000);
???System.out.println("The Server Connected!");
???System.out.println("Please enter some Character:");
???BufferedReader line = new BufferedReader(new
InputStreamReader(System.in));
???out = new PrintWriter(socket.getOutputStream(),true);
???out.println(line.readLine());
???in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
???System.out.println(in.readLine());
???out.close();
???in.close();
???socket.close();
??}catch(IOException e)
??{
???out.println("Wrong");
??}
?}
?public static void main(String[] args)
?{
??new Client();
?}
};
14、用JAVA實(shí)現(xiàn)一種排序,JAVA類實(shí)現(xiàn)序列化的方法(二種)? 如在COLLECTION框架中,實(shí)現(xiàn)比較要實(shí)現(xiàn)什么樣的接口?
答:用插入法進(jìn)行排序代碼如下
package test;
import java.util.*;
class? InsertSort
{
?ArrayList al;
?public InsertSort(int num,int mod)
?{
??al = new ArrayList(num);
??Random rand = new Random();
??System.out.println("The ArrayList Sort Before:");
??for (int i=0;i
???al.add(new Integer(Math.abs(rand.nextInt()) % mod + 1));
???System.out.println("al["+i+"]="+al.get(i));
??}
?}
?public void SortIt()
?{
??Integer tempInt;
??int MaxSize=1;
??for(int i=1;i
?????? tempInt = (Integer)al.remove(i);
????if(tempInt.intValue()>=((Integer)al.get(MaxSize-1)).intValue())
????{
?????al.add(MaxSize,tempInt);
?????MaxSize++;
?????System.out.println(al.toString());
????} else {
?????for (int j=0;j
??????if
(((Integer)al.get(j)).intValue()>=tempInt.intValue())
??????{
???????al.add(j,tempInt);
???????MaxSize++;
???????System.out.println(al.toString());
???????break;
??????}
?????}
????}
??}
??System.out.println("The ArrayList Sort After:");
??for(int i=0;i
???System.out.println("al["+i+"]="+al.get(i));
??}
?}
?public static void main(String[] args)
?{
??InsertSort is = new InsertSort(10,100);
??is.SortIt();
?}
}
JAVA類實(shí)現(xiàn)序例化的方法是實(shí)現(xiàn)java.io.Serializable接口
Collection框架中實(shí)現(xiàn)比較要實(shí)現(xiàn)Comparable 接口和 Comparator 接口
15、編程:編寫一個(gè)截取字符串的函數(shù),輸入為一個(gè)字符串和字節(jié)數(shù),輸出為按字節(jié)截取的字符串。 但是要保證漢字不被截半個(gè),如“我ABC”4,應(yīng)該截為“我AB”,輸入“我ABC漢DEF”,6,應(yīng)該輸出為“我ABC”而不是“我ABC+漢的半個(gè)”。
答:代碼如下:
package test;
class? SplitString
{
?String SplitStr;
?int SplitByte;
?public SplitString(String str,int bytes)
?{
??SplitStr=str;
??SplitByte=bytes;
??System.out.println("The String is:'"+SplitStr+"';SplitBytes="+SplitByte);
?}
?public void SplitIt()
?{
??int loopCount;
??
loopCount=(SplitStr.length()%SplitByte==0)?(SplitStr.length()/SplitByte):(SplitStr.length()/Split
Byte+1);
??System.out.println("Will Split into "+loopCount);
??for (int i=1;i<=loopCount ;i++ )
??{
???if (i==loopCount){
????
System.out.println(SplitStr.substring((i-1)*SplitByte,SplitStr.length()));
???} else {
????
System.out.println(SplitStr.substring((i-1)*SplitByte,(i*SplitByte)));
???}
??}
?}
?public static void main(String[] args)
?{
??SplitString ss = new SplitString("test中dd文dsaf中男大3443n中國43中國人
0ewldfls=103",4);
??ss.SplitIt();
?}
}
16、JAVA多線程編程。 用JAVA寫一個(gè)多線程程序,如寫四個(gè)線程,二個(gè)加1,二個(gè)對一個(gè)變量減一,輸出。
希望大家補(bǔ)上,謝謝
17、STRING與STRINGBUFFER的區(qū)別。
答:STRING的長度是不可變的,STRINGBUFFER的長度是可變的。如果你對字符串中的內(nèi)容經(jīng)常進(jìn)行操作,特別是內(nèi)容要修改時(shí),那么使用StringBuffer,如果最后需要String,那么使用StringBuffer的toString()方法
Jsp方面
1、jsp有哪些內(nèi)置對象?作用分別是什么?
答:JSP共有以下9種基本內(nèi)置組件(可與ASP的6種內(nèi)部組件相對應(yīng)):
request 用戶端請求,此請求會(huì)包含來自GET/POST請求的參數(shù)
?? response 網(wǎng)頁傳回用戶端的回應(yīng)
?? pageContext 網(wǎng)頁的屬性是在這里管理
?? session 與請求有關(guān)的會(huì)話期
?? application servlet 正在執(zhí)行的內(nèi)容
?? out 用來傳送回應(yīng)的輸出
?? config servlet的構(gòu)架部件
?? page JSP網(wǎng)頁本身
?? exception 針對錯(cuò)誤網(wǎng)頁,未捕捉的例外
2、jsp有哪些動(dòng)作?作用分別是什么?
答:JSP共有以下6種基本動(dòng)作
?? jsp:include:在頁面被請求的時(shí)候引入一個(gè)文件。
?? jsp:useBean:尋找或者實(shí)例化一個(gè)JavaBean。
?? jsp:setProperty:設(shè)置JavaBean的屬性。
?? jsp:getProperty:輸出某個(gè)JavaBean的屬性。
?? jsp:forward:把請求轉(zhuǎn)到一個(gè)新的頁面。
?? jsp:plugin:根據(jù)瀏覽器類型為Java插件生成OBJECT或EMBED標(biāo)記
3、JSP中動(dòng)態(tài)INCLUDE與靜態(tài)INCLUDE的區(qū)別?
答:動(dòng)態(tài)INCLUDE用jsp:include動(dòng)作實(shí)現(xiàn)
??
?? 靜態(tài)INCLUDE用include偽碼實(shí)現(xiàn),定不會(huì)檢查所含文件的變化,適用于包含靜態(tài)頁面
?? <%@ include file="included.htm" %>
4、兩種跳轉(zhuǎn)方式分別是什么?有什么區(qū)別?
答:有兩種,分別為:
?
?
? 前者頁面不會(huì)轉(zhuǎn)向include所指的頁面,只是顯示該頁的結(jié)果,主頁面還是原來的頁面。執(zhí)行完后還會(huì)回來,相當(dāng)于函數(shù)調(diào)用。并且可以帶參數(shù).后者完全轉(zhuǎn)向新頁面,不會(huì)再回來。相當(dāng)于go to 語句。
Servlet方面
1、說一說Servlet的生命周期?
答:servlet有良好的生存期的定義,包括加載和實(shí)例化、初始化、處理請求以及服務(wù)結(jié)束。這個(gè)生存期由javax.servlet.Servlet接口的init,service和destroy方法表達(dá)。
2、Servlet版本間(忘了問的是哪兩個(gè)版本了)的不同?
希望大家補(bǔ)上,謝謝
3、JAVA SERVLET API中forward() 與redirect()的區(qū)別?
答:前者僅是容器中控制權(quán)的轉(zhuǎn)向,在客戶端瀏覽器地址欄中不會(huì)顯示出轉(zhuǎn)向后的地址;后者則是完全的跳轉(zhuǎn),瀏覽器將會(huì)得到跳轉(zhuǎn)的地址,并重新發(fā)送請求鏈接。這樣,從瀏覽器的地址欄中可以看到跳轉(zhuǎn)后的鏈接地址。所以,前者更加高效,在前者可以滿足需要時(shí),盡量使用forward()方法,并且,這樣也有助于隱藏實(shí)際的鏈接。在有些情況下,比如,需要跳轉(zhuǎn)到一個(gè)其它服務(wù)器上的資源,則必須使用sendRedirect()方法。
4、Servlet的基本架構(gòu)
public class ServletName extends HttpServlet {
? public void doPost(HttpServletRequest request, HttpServletResponse response) throws
????? ServletException, IOException? {
????? }
? public void doGet(HttpServletRequest request, HttpServletResponse response) throws
????? ServletException, IOException? {
????? }
}
Jdbc、Jdo方面
1、可能會(huì)讓你寫一段Jdbc連Oracle的程序,并實(shí)現(xiàn)數(shù)據(jù)查詢.
答:程序如下:
package hello.ant;
import java.sql.*;
public class? jdbc
{
?String dbUrl="jdbc:oracle:thin:@127.0.0.1:1521:orcl";
?String theUser="admin";
?String thePw="manager";
?Connection c=null;
?Statement conn;
?ResultSet rs=null;
?public jdbc()
?{
??try{
??? Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
????????? c = DriverManager.getConnection(dbUrl,theUser,thePw);
??? conn=c.createStatement();
??}catch(Exception e){
???e.printStackTrace();
??}
?}
?public boolean executeUpdate(String sql)
?{
???try
???{
?????conn.executeUpdate(sql);
?????return true;
???}
???catch (SQLException e)
???{
?????e.printStackTrace();
?????return false;
???}
?}
?public ResultSet executeQuery(String sql)
?{
???rs=null;
???try
???{
?????rs=conn.executeQuery(sql);
???}
???catch (SQLException e)
???{
?????e.printStackTrace();
???}
???return rs;
?}
?public void close()
?{
???try
???{
?????conn.close();
?????c.close();
???}
???catch (Exception e)
???{
?????e.printStackTrace();
???}
?}
?public static void main(String[] args)
?{
??ResultSet rs;
??jdbc conn = new jdbc();
??rs=conn.executeQuery("select * from test");
??try{
??while (rs.next())
??{
???System.out.println(rs.getString("id"));
???System.out.println(rs.getString("name"));
??}
??}catch(Exception e)
??{
???e.printStackTrace();
??}
?}
}
2、Class.forName的作用?為什么要用?
答:調(diào)用該訪問返回一個(gè)以字符串指定類名的類的對象。
3、Jdo是什么?
答:JDO是Java對象持久化的新的規(guī)范,為java data object的簡稱,也是一個(gè)用于存取某種數(shù)據(jù)倉庫中的對象的標(biāo)準(zhǔn)化API。JDO提供了透明的對象存儲,因此對開發(fā)人員來說,存儲數(shù)據(jù)對象完全不需要額外的代碼(如JDBC API的使用)。這些繁瑣的例行工作已經(jīng)轉(zhuǎn)移到JDO產(chǎn)品提供商身上,使開發(fā)人員解脫出來,從而集中時(shí)間和精力在業(yè)務(wù)邏輯上。另外,JDO很靈活,因?yàn)樗梢栽谌魏螖?shù)據(jù)底層上運(yùn)行。JDBC只是面向關(guān)系數(shù)據(jù)庫(RDBMS)JDO更通用,提供到任何數(shù)據(jù)底層的存儲功能,比如關(guān)系數(shù)據(jù)庫、文件、XML以及對象數(shù)據(jù)庫(ODBMS)等等,使得應(yīng)用可移植性更強(qiáng)。
4、在ORACLE大數(shù)據(jù)量下的分頁解決方法。一般用截取ID方法,還有是三層嵌套方法。 href="List.jsp?page=<%=upPage%>">上一頁
答:一種分頁方法
<%
? int i=1;
? int numPages=14;
? String pages = request.getParameter("page") ;
? int currentPage = 1;
? currentPage=(pages==null)?(1):{Integer.parseInt(pages)}
? sql = "select count(*) from tables";
? ResultSet rs = DBLink.executeQuery(sql) ;
? while(rs.next()) i = rs.getInt(1) ;
? int intPageCount=1;
? intPageCount=(i%numPages==0)?(i/numPages):(i/numPages+1);
? int nextPage ;
? int upPage;
? nextPage = currentPage+1;
? if (nextPage>=intPageCount) nextPage=intPageCount;
? upPage = currentPage-1;
? if (upPage<=1) upPage=1;
? rs.close();
? sql="select * from tables";
? rs=DBLink.executeQuery(sql);
? i=0;
? while((i
//輸出內(nèi)容
//輸出翻頁連接
合計(jì):<%=currentPage%>/<%=intPageCount%>
<%
? for(int j=1;j<=intPageCount;j++){
? if(currentPage!=j){
%>
? [<%=j%>]
<%
? }else{
? out.println(j);
? }
? }
%>
下一頁最后頁
Xml方面
1、xml有哪些解析技術(shù)?區(qū)別是什么?
答:有DOM,SAX,STAX等
DOM:處理大型文件時(shí)其性能下降的非常厲害。這個(gè)問題是由DOM的樹結(jié)構(gòu)所造成的,這種結(jié)構(gòu)占用的內(nèi)存較多,而且DOM必須在解析文件之前把整個(gè)文檔裝入內(nèi)存,適合對XML的隨機(jī)訪問SAX:不現(xiàn)于DOM,SAX是事件驅(qū)動(dòng)型的XML解析方式。它順序讀取XML文件,不需要一次全部裝載整個(gè)文件。當(dāng)遇到像文件開頭,文檔結(jié)束,或者標(biāo)簽開頭與標(biāo)簽結(jié)束時(shí),它會(huì)觸發(fā)一個(gè)事件,用戶通過在其回調(diào)事件中寫入處理代碼來處理XML文件,適合對XML的順序訪問
STAX:Streaming API for XML (StAX)
2、你在項(xiàng)目中用到了xml技術(shù)的哪些方面?如何實(shí)現(xiàn)的?
答:用到了數(shù)據(jù)存貯,信息配置兩方面。在做數(shù)據(jù)交換平臺時(shí),將不能數(shù)據(jù)源的數(shù)據(jù)組裝成XML文件,然后將XML文件壓縮打包加密后通過網(wǎng)絡(luò)傳送給接收者,接收解密與解壓縮后再同XML文件中還原相關(guān)信息進(jìn)行處理。在做軟件配置時(shí),利用XML可以很方便的進(jìn)行,軟件的各種配置參數(shù)都存貯在XML文件中。
3、用jdom解析xml文件時(shí)如何解決中文問題?如何解析?
答:看如下代碼,用編碼方式加以解決
package test;
import java.io.*;
public class DOMTest
{
?private String inFile = "c:\\people.xml";
?private String outFile = "c:\\people.xml";?
?public static void main(String args[])
?{
??? ?new DOMTest();
??? }
?public DOMTest()
?{
??try
???? {?
???? ?javax.xml.parsers.DocumentBuilder builder =
???? ??
javax.xml.parsers.DocumentBuilderFactory.newInstance().newDocumentBuilder();
???? ?org.w3c.dom.Document doc = builder.newDocument();
???? ?org.w3c.dom.Element root = doc.createElement("老師");
???? ?org.w3c.dom.Element wang = doc.createElement("王");
???org.w3c.dom.Element liu = doc.createElement("劉");
???? ?wang.appendChild(doc.createTextNode("我是王老師"));
???? ?root.appendChild(wang);
???? ?doc.appendChild(root);
???? ?javax.xml.transform.Transformer transformer =
???? ??javax.xml.transform.TransformerFactory.newInstance().newTransformer();
???? ?transformer.setOutputProperty(javax.xml.transform.OutputKeys.ENCODING, "gb2312");
???? ?transformer.setOutputProperty(javax.xml.transform.OutputKeys.INDENT, "yes");??
? ?
???? ?transformer.transform(new javax.xml.transform.dom.DOMSource(doc),
???? ???????new
javax.xml.transform.stream.StreamResult(outFile));
???? }
???? catch (Exception e)
???? {
???? ?System.out.println (e.getMessage());
???? }
??? }
}
4、編程用JAVA解析XML的方式.
答:用SAX方式解析XML,XML文件如下:
?
?
?
?
?
?事件回調(diào)類SAXHandler.java
?import java.io.*;
import java.util.Hashtable;
import org.xml.sax.*;
public class SAXHandler extends HandlerBase
? {
? private Hashtable table = new Hashtable();
? private String currentElement = null;
? private String currentValue = null;
? public void setTable(Hashtable table)
??? {
??? this.table = table;
??? }
? public Hashtable getTable()
??? {
??? return table;
??? }
? public void startElement(String tag, AttributeList attrs)
? throws SAXException
??? {
??? currentElement = tag;
??? }
? public void characters(char[] ch, int start, int length)
? throws SAXException
??? {
??? currentValue = new String(ch, start, length);
??? }
? public void endElement(String name) throws SAXException
??? {
??? if (currentElement.equals(name))
????? table.put(currentElement, currentValue);
??? }
? }
JSP內(nèi)容顯示源碼,SaxXml.jsp:
<%@ page errorPage="ErrPage.jsp"
contentType="text/html;charset=GB2312" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.Hashtable" %>
<%@ page import="org.w3c.dom.*" %>
<%@ page import="org.xml.sax.*" %>
<%@ page import="javax.xml.parsers.SAXParserFactory" %>
<%@ page import="javax.xml.parsers.SAXParser" %>
<%@ page import="SAXHandler" %>
<%
File file = new File("c:\\people.xml");
FileReader reader = new FileReader(file);
Parser parser;
SAXParserFactory spf = SAXParserFactory.newInstance();
SAXParser sp = spf.newSAXParser();
SAXHandler handler = new SAXHandler();
sp.parse(new InputSource(reader), handler);
Hashtable hashTable = handler.getTable();
out.println("
");
out.println(" "); 姓名 " + "" +
? (String)hashTable.get(new String("name")) + "
out.println(" "); 學(xué)院 " + "" +
? (String)hashTable.get(new String("college"))+"
out.println(" "); 電話 " + "" +
? (String)hashTable.get(new String("telephone")) + "
out.println(" "); 備注 " + "" +
? (String)hashTable.get(new String("notes")) + "
out.println("
%>
EJB方面
1、EJB2.0有哪些內(nèi)容?分別用在什么場合? EJB2.0和EJB1.1的區(qū)別?
答:規(guī)范內(nèi)容包括Bean提供者,應(yīng)用程序裝配者,EJB容器,EJB配置工具,EJB服務(wù)提供者,系統(tǒng)管理員。這里面,EJB容器是EJB之所以能夠運(yùn)行的核心。EJB容器管理著EJB的創(chuàng)建,撤消,激活,去活,與數(shù)據(jù)庫的連接等等重要的核心工作。JSP,Servlet,EJB,JNDI,JDBC,JMS.....
2、EJB與JAVA BEAN的區(qū)別?
答:Java Bean 是可復(fù)用的組件,對Java Bean并沒有嚴(yán)格的規(guī)范,理論上講,任何一個(gè)Java類都可以是一個(gè)Bean。但通常情況下,由于Java Bean是被容器所創(chuàng)建(如Tomcat)的,所以Java Bean應(yīng)具有一個(gè)無參的構(gòu)造器,另外,通常Java Bean還要實(shí)現(xiàn)Serializable接口用于實(shí)現(xiàn)Bean的持久性。Java Bean實(shí)際上相當(dāng)于微軟COM模型中的本地進(jìn)程內(nèi)COM組件,它是不能被跨進(jìn)程訪問的。Enterprise Java Bean 相當(dāng)于DCOM,即分布式組件。它是基于Java的遠(yuǎn)程方法調(diào)用(RMI)技術(shù)的,所以EJB可以被遠(yuǎn)程訪問(跨進(jìn)程、跨計(jì)算機(jī))。但EJB必須被布署在諸如Webspere、WebLogic這樣的容器中,EJB客戶從不直接訪問真正的EJB組件,而是通過其容器訪問。EJB容器是EJB組件的代理,EJB組件由容器所創(chuàng)建和管理??蛻敉ㄟ^容器來訪問真正的EJB組件。
3、EJB的基本架構(gòu)
答:一個(gè)EJB包括三個(gè)部分:
? Remote Interface 接口的代碼
? package Beans;
? import javax.ejb.EJBObject;
? import java.rmi.RemoteException;
? public interface Add extends EJBObject
? {
?? //some method declare
? }
? Home Interface 接口的代碼
? package Beans;
? import java.rmi.RemoteException;
? import jaax.ejb.CreateException;
? import javax.ejb.EJBHome;
? public interface AddHome extends EJBHome
? {
??? //some method declare
? }
? EJB類的代碼
? package Beans;
? import java.rmi.RemoteException;
? import javax.ejb.SessionBean;
? import javx.ejb.SessionContext;
? public class AddBean Implements SessionBean
? {
??? //some method declare
? }?
J2EE,MVC方面
1、MVC的各個(gè)部分都有那些技術(shù)來實(shí)現(xiàn)?如何實(shí)現(xiàn)?
答:MVC是Model-View-Controller的簡寫。"Model" 代表的是應(yīng)用的業(yè)務(wù)邏輯(通過JavaBean,EJB組件實(shí)現(xiàn)), "View" 是應(yīng)用的表示面(由JSP頁面產(chǎn)生),"Controller" 是提供應(yīng)用的處理過程控制(一般是一個(gè)Servlet),通過這種設(shè)計(jì)模型把應(yīng)用邏輯,處理過程和顯示邏輯分成不同的組件實(shí)現(xiàn)。這些組件可以進(jìn)行交互和重用。
2、應(yīng)用服務(wù)器與WEB SERVER的區(qū)別?
希望大家補(bǔ)上,謝謝
3、J2EE是什么?
答:Je22是Sun公司提出的多層(multi-diered),分布式(distributed),基于組件(component-base)的企業(yè)級應(yīng)用模型(enterpriese application model).在這樣的一個(gè)應(yīng)用系統(tǒng)中,可按照功能劃分為不同的組件,這些組件又可在不同計(jì)算機(jī)上,并且處于相應(yīng)的層次(tier)中。所屬層次包括客戶層(clietn tier)組件,web層和組件,Business層和組件,企業(yè)信息系統(tǒng)(EIS)層。
4、WEB SERVICE名詞解釋。JSWDL開發(fā)包的介紹。JAXP、JAXM的解釋。SOAP、UDDI,WSDL解釋。
答:Web Service描述語言WSDL
SOAP即簡單對象訪問協(xié)議(Simple Object Access Protocol),它是用于交換XML編碼信息的輕量級協(xié)議。
UDDI 的目的是為電子商務(wù)建立標(biāo)準(zhǔn);UDDI是一套基于Web的、分布式的、為Web Service提供的、信息注冊中心的實(shí)現(xiàn)標(biāo)準(zhǔn)規(guī)范,同時(shí)也包含一組使企業(yè)能將自身提供的Web Service注冊,以使別的企業(yè)能夠發(fā)現(xiàn)的訪問協(xié)議的實(shí)現(xiàn)標(biāo)準(zhǔn)。
5、BS與CS的聯(lián)系與區(qū)別。
希望大家補(bǔ)上,謝謝
6、STRUTS的應(yīng)用(如STRUTS架構(gòu))
答:Struts是采用Java Servlet/JavaServer Pages技術(shù),開發(fā)Web應(yīng)用程序的開放源碼的framework。 采用Struts能開發(fā)出基于MVC(Model-View-Controller)設(shè)計(jì)模式的應(yīng)用構(gòu)架。 Struts有如下的主要功能:
一.包含一個(gè)controller servlet,能將用戶的請求發(fā)送到相應(yīng)的Action對象。
二.JSP自由tag庫,并且在controller servlet中提供關(guān)聯(lián)支持,幫助開發(fā)員創(chuàng)建交互式表單應(yīng)用。
三.提供了一系列實(shí)用對象:XML處理、通過Java reflection APIs自動(dòng)處理JavaBeans屬性、國際化的提示和消息。
設(shè)計(jì)模式方面
1、開發(fā)中都用到了那些設(shè)計(jì)模式?用在什么場合?
答:每個(gè)模式都描述了一個(gè)在我們的環(huán)境中不斷出現(xiàn)的問題,然后描述了該問題的解決方案的核心。通過這種方式,你可以無數(shù)次地使用那些已有的解決方案,無需在重復(fù)相同的工作。主要用到了MVC的設(shè)計(jì)模式。用來開發(fā)JSP/Servlet或者J2EE的相關(guān)應(yīng)用。簡單工廠模式等。
2、UML方面
答:標(biāo)準(zhǔn)建模語言UML。用例圖,靜態(tài)圖(包括類圖、對象圖和包圖),行為圖,交互圖(順序圖,合作圖),實(shí)現(xiàn)圖,
JavaScript方面
1、如何校驗(yàn)數(shù)字型?
var re=/^\d{1,8}$|\.\d{1,2}$/;
var str=document.form1.all(i).value;
var r=str.match(re);
if (r==null)
{
?? sign=-4;
?? break;
}
else{
?? document.form1.all(i).value=parseFloat(str);
}
CORBA方面
1、CORBA是什么?用途是什么?
答:CORBA 標(biāo)準(zhǔn)是公共對象請求代理結(jié)構(gòu)(Common Object Request Broker Architecture),由對象管理組織 (Object Management Group,縮寫為 OMG)標(biāo)準(zhǔn)化。它的組成是接口定義語言(IDL), 語言綁定(binding:也譯為聯(lián)編)和允許應(yīng)用程序間互操作的協(xié)議。 其目的為:
用不同的程序設(shè)計(jì)語言書寫
在不同的進(jìn)程中運(yùn)行
為不同的操作系統(tǒng)開發(fā)
LINUX方面
1、LINUX下線程,GDI類的解釋。
答:LINUX實(shí)現(xiàn)的就是基于核心輕量級進(jìn)程的"一對一"線程模型,一個(gè)線程實(shí)體對應(yīng)一個(gè)核心輕量級進(jìn)程,而線程之間的管理在核外函數(shù)庫中實(shí)現(xiàn)。
GDI類為圖像設(shè)備編程接口類庫。
在應(yīng)用程序即將使用一個(gè)對象時(shí)在分配這個(gè)對象,而不是在應(yīng)用程序啟動(dòng)是全部分配。
一旦應(yīng)用程序不再需要一個(gè)對象,就要將所有對該對象的引用賦值為null
總是重用對象而不是創(chuàng)建對象。
遵守拇指法則
應(yīng)用程序通常是單線程的。
一次只能運(yùn)行一個(gè)應(yīng)用程序
應(yīng)用程序是事件驅(qū)動(dòng)的
用戶從一個(gè)應(yīng)用程序切換到另一個(gè)應(yīng)用程序,而不是結(jié)束應(yīng)用程序
移動(dòng)小型計(jì)算設(shè)備的使用方式通常是每次只用兩分鐘,每次用30次。
應(yīng)用程序必須在兩分鐘之內(nèi)完成一項(xiàng)任務(wù)。
我還喜歡她嗎?我也不知道,真的真的模糊了…
我記得有段時(shí)間狠狠的喜歡過,也信誓旦旦的承諾過…
雖然在繁忙的學(xué)習(xí)之間會(huì)想起她,雖然是一閃而過,但是心里還是酸酸的。
她很漂亮,至少我一直這樣想的,倒不是說就是一見鐘情的那種。感覺卻是聊天里來的….
似乎這很老套??删褪沁@樣簡單的打招呼,親切的問候……似乎就忘不了了.
即使真的喜歡又會(huì)怎么樣呢?想起她就這樣反問自己。“見都沒見過呢”?!跋扔惺聵I(yè),在有妻室”,“熱血男兒志在四方”,
理由就是這樣一個(gè)接一個(gè)的會(huì)涌上來.
苦苦笑笑 得了吧…
就算認(rèn)識過,就算真的相愛過,在距離面前…“0”
我知道答案其實(shí)一直一直都沒變過,變的只是周圍的環(huán)境,繁忙的學(xué)習(xí),巨大的工作壓力,讓我漸漸把這個(gè)答案深深埋了起來,再不能象以前一天到晚守在電腦前等她上線,再不能拿著手機(jī)給她發(fā)消息,再不能偷偷打工為她買東東,再不能……………..
好難得周末…能這樣輕松的坐在電腦前..(別忘了明天早起上課..-_-)
把她放在心里…我知道她會(huì)永遠(yuǎn)在自己心里.
馬上就要畢業(yè)了,大學(xué)四年的生活一晃而過,過的好快哦。
讀書的時(shí)候總拼命找時(shí)間玩..總想星期六星期天有時(shí)間可以補(bǔ)回來。呵呵,所以整個(gè)大學(xué)四年都在縫縫補(bǔ)補(bǔ)。
人們總是以為一件事情干兩天肯定要比干一天要做好,以前的我也是如此認(rèn)為,做事慢慢吞吞,總以為花的時(shí)間越多就能做的越好。其實(shí)錯(cuò)了,大家都錯(cuò)了,一天能做好的事情就要花一天做的最好,星期六星期天是拿來放松的,拿來休息的。
并是不忙忙碌碌就能成功。
而成功的人就一定是效率高。
回學(xué)校啦,呵呵,音響放到最響....
室友添了新電腦...嘿嘿 ....以后爽游戲又方便多啦...HOHO
2005 一切都在改變.....我也要加油干起來了~~~
回家啦 ...終于回家了....
大學(xué)生涯最后一個(gè)寒假....happy new year~~~
珍惜擁有....
忘記以前的天真,無憂。。。。。在這一年里即將踏入社會(huì)。我知道現(xiàn)在我是新人,生活法則,社會(huì)規(guī)則,我必須一點(diǎn)一滴的從頭開始。。。。2005 奮斗的一年,那里有一座陌生的城市等我去闖蕩,那里有嶄新的事業(yè)等我去開拓,以后回頭------我必須告訴自己。。。2005年,我為我自己選者的路而驕傲
Thread 線程
它能鎖定任何對象占用的內(nèi)存(內(nèi)存實(shí)際是多種共享資源的一種),所以同一時(shí)間只能有一個(gè)線程使用特定的內(nèi)存空間。為達(dá)到這個(gè)目的,需要使用synchronized關(guān)鍵字。
瀏覽器最初只是純粹的查看程序,這是由于每次采取一些要求編程的操作時(shí),必須將信息反饋回服務(wù)器,在服務(wù)器那一端進(jìn)行處理。所以完全可能需要等待數(shù)秒乃至數(shù)分鐘的時(shí)間才會(huì)發(fā)現(xiàn)自己剛才拼錯(cuò)了一個(gè)單詞。這就叫作“客戶端編程”。
applet 程序片
時(shí)刻提醒自己注意以下幾個(gè)問題:
(1) 對象是什么?(怎樣將自己的項(xiàng)目分割成一系列單獨(dú)的組件?)
(2) 它們的接口是什么?(需要將什么消息發(fā)給每一個(gè)對象?)
在確定了對象和它們的接口后,便可著手編寫一個(gè)程序。出于對多方面原因的考慮,可能還需要比這更多的說明及文檔,但要求掌握的資料絕對不能比這還少。
想象成用遙控板(句柄)操縱電視機(jī)(對象)。只要握住這個(gè)遙控板,就相當(dāng)于掌握了與電視機(jī)連接的通道。但一旦需要“換頻道”或者“關(guān)小聲音”,我們實(shí)際操縱的是遙控板(句柄),再由遙控板自己操縱電視機(jī)(對象)。如果要在房間里四處走走,并想保持對電視機(jī)的控制,那么手上拿著的是遙控板,而非電視機(jī)。
此外,即使沒有電視機(jī),遙控板亦可獨(dú)立存在。
Heap 堆
Java對象本身永遠(yuǎn)都不會(huì)置入靜態(tài)存儲空間
wrapper 封裝器 Scope 作用域
class ATypeName {/*類主體置于這里}
這樣就引入了一種新類型,接下來便可用new創(chuàng)建這種類型的一個(gè)新對象:
ATypeName a = new ATypeName();
我們在Java里的全部工作就是定義類、制作那些類的對象以及將消息發(fā)給那些對象
class DataOnly {
int i;
float f;
boolean b;
}
這個(gè)類并沒有做任何實(shí)質(zhì)性的事情,但我們可創(chuàng)建一個(gè)對象:
DataOnly d = new DataOnly();
可將值賦給數(shù)據(jù)成員,但首先必須知道如何引用一個(gè)對象的成員。為達(dá)到引用對象成員的目的,首先要寫上對象句柄的名字,再跟隨一個(gè)點(diǎn)號(句點(diǎn)),再跟隨對象內(nèi)部成員的名字。即“對象句柄.成員”。例如:
d.i = 47;
d.f = 1.1f;
d.b = false;
Method 方法
Java的方法只能作為類的一部分創(chuàng)建。只能針對某個(gè)對象調(diào)用一個(gè)方法
import的作用是指示編譯器導(dǎo)入一個(gè)“包”——或者說一個(gè)“類庫”
梵天:印度教神話中三大最高神之一。世界的創(chuàng)造者。佛教吸收其為護(hù)法神,稱“大梵天王”
。
濕婆:印度三大神的第三位。又叫“西哇”。是最受崇拜的神之一。是象征“昌盛”和“吉兆”的神。同時(shí)又象征“毀滅”,是起死回生之神。一般被視為“破壞神”。同時(shí)他也是生殖之神,傳到中國后與藏教密宗中的大歡喜菩薩互相影響。有時(shí)也被人塑成一面目猙獰的怒漢和一極美女子交合的形象。濕婆表現(xiàn)憤怒的一面?zhèn)魅肴毡竞螅鳛榇蠛谔焓致劽?,是武士和浪人的保護(hù)神。
毗濕奴:三大主神之一,與前兩者并稱為三聯(lián)神。稱謂極多,有一千種以上,常見的為“那羅衍”,“世界之主”等。
因陀羅:雷電之神,眾神之首,后成為天王。被佛教吸收后又叫“帝釋天”,為善見城城主。
吉祥天:即拉克什密。被稱為毗濕奴的妻子。在最古老的神話中與大梵天,俱毗羅,因陀羅聯(lián)系在一起,是佛教的護(hù)法天王。是毗沙天門王之妹,號稱“功德天王”。毗沙天王是北方天王,是財(cái)富之神,勝利,護(hù)法之神。
釋迦:原名喬達(dá)摩。悉達(dá)多,佛教的創(chuàng)始人。相傳為印度北部小國王子,后舍棄家庭,權(quán)位,獨(dú)自出走。七年后在菩提樹下頓悟成佛。又被稱為大日如來。佛教中最為崇高的神,曾降伏過中國的戰(zhàn)斗之神齊天大圣。
天龍八部:即八部眾,說法見于佛經(jīng)?!斗ㄈA經(jīng)。提婆達(dá)多品》中曾提到過:“天龍八部,人與非人,皆遙見彼龍女成佛、”
天:即帝釋天為首的天神。天神的壽命也會(huì)完結(jié),這是因?yàn)榉鸺蚁嘈攀率陆杂袩o常。天神臨死前會(huì)出現(xiàn)“衣裳垢膩,頭上花萎,身體臭穢,腋下出汗,不樂本位”這五種征兆,也就是所謂的“天人五哀”。
阿修羅:阿修羅是與天對立的一族。他們非常好戰(zhàn),男的極丑,女的極美。阿修羅有美女而無美食。天有美食而無美女。雙方常因此而互相爭斗,場面十分慘烈。“修羅場”的說法即從此來。阿修羅一族被視為戰(zhàn)神,他還有個(gè)化身是火神大摩尼,也就是“拜火教”和中土“明教”的最高神。
龍:龍無論在東西方神話,還是在奇幻文化中都是個(gè)非常歡迎的角色。以其獨(dú)特的外形,強(qiáng)大的力量備受青睞??梢哉f一說到奇幻,人們就會(huì)想到龍,龍幾乎成了奇幻文學(xué)的代表。東西方的龍雖然有所不同,但它們也有很多相似之處,頭部特征,善飛翔,會(huì)從嘴中吐出物質(zhì)攻擊等。這些驚人的巧合讓人忍不住懷疑是否以前有此一類生物存在。龍的記載在我國由來以久,大量詳實(shí),準(zhǔn)確,生動(dòng)的記錄貫穿著整個(gè)古代正史,有紀(jì)可考的記錄最后見于民國初年,讓人十分迷惑。但天龍八部中的龍其實(shí)說的是一種大蟒蛇。
乾達(dá)婆:擁有黃金之翼半人半鳥的精靈。天界的音樂家。
迦樓羅:中國人很熟悉的一種大鳥,傳入中國后演變成了金翅大鵬鳥。原型是種翅有種種莊嚴(yán)寶色的神鳥,一天吞噬一條龍王和五百條小龍(哪來這么多龍讓它吃?),五百年自焚一次,然后又從火焰中復(fù)活,鳳凰重生的傳說即來源于此。
其他有代表性的神
巴爾:又名巴盧爾或巴卡爾,出現(xiàn)在不同神話中,名稱也不同。美索不達(dá)米亞一帶的主神,掌管雷電和農(nóng)牧,生殖。也是死而復(fù)生之神。與兄長穆圖是死敵。起先是善神,后在基督教義中被視為邪神。在《暗黑破壞神二》中登場,被視為毀滅之王。
穆圖:也名莫特。死神,冥界之神,混沌之神,干旱和歉收之神。是巴爾的兄長和主要對手。出自閃米特族神話。
阿卡特拉姆:凱爾特神話中的勇敢之神,達(dá)努神族努阿達(dá)的別名。曾與邪神巴爾殊死作戰(zhàn)。
須佐之男:日本神話中最早的大神依邪那歧三子女中的最幼者,另兩為就是日本最高神天照大神,和月讀了。他全名為素盞鳴尊,亂暴之神,因其狂暴的性格而被視為破壞神。他斬殺了八歧大蛇,成為神話中的英雄。
伊希斯:埃及神話中神力非凡的巫師,被視為魔法的始祖。
塞特:出自埃及神話,希臘人稱之為緹豐,為惡靈的化身,永遠(yuǎn)與善良作對。傳說他曾化身黑豬,每月攻擊啖食月亮。
哈奴曼:印度版孫悟空,是印度神話中的神猴。風(fēng)神和母猴所生之子。在英雄敘事詩《羅摩衍那》中登場成為幫助羅摩王子的好幫手。他聰明非凡,力能排山倒海,善于騰云駕霧,變幻形象和大小(還說不是孫悟空?),多次救助羅摩王子,是智慧和力量的化身。
塞克爾:埃及神話中的死者之神。以鷹頭木乃伊的形象出現(xiàn),傳說為冥界的判官,常用一架天平來稱量死者的心臟,以決定他的待遇。在古埃及法老陵墓中的壁畫上大量出現(xiàn),在羅。斯托神廟中被膜拜。
奧?。罕睔W阿斯神族的至高神,諸神之王,也是死者之王,戰(zhàn)神,權(quán)力之神,魔法之神。曾冒死以一人之力闖入冥界,為人類取得古文字而擁有大量知識,為此失去一只眼睛。他身形高大,身披金甲,騎八足神馬“斯萊普尼斯”,手持名槍“岡尼爾”,居住在“瓦爾哈拉”的神殿中,讓女武神收集死者的魂魄,為終末之戰(zhàn)“饒納諾克”即“諸神的黃昏”做準(zhǔn)備。為舉世聞名的北歐蠻族,維京人所信仰。他們堅(jiān)信如果英勇戰(zhàn)死就可以進(jìn)入“瓦爾哈拉”,所以戰(zhàn)斗是勇猛無比,曾席卷過大半個(gè)歐洲。
女武神(瓦爾基里):侍奉主神奧丁的女神,奉命奔波在戰(zhàn)場上,收集戰(zhàn)死的勇士的靈魂,帶往“瓦爾哈拉”,讓其復(fù)活以應(yīng)付諸神與巨人族的“諸神的黃昏”的最終戰(zhàn)。女武神們各個(gè)武技高超,為人類的保護(hù)神 。著名劇作家瓦格納曾為其譜寫過名曲《女武神的飛馳》(瓦格納以及他的作品和生平會(huì)在以后介紹,他的著名作品《尼伯龍根的指環(huán)》是歌劇版的奇幻小說,有興趣的可以找來聽聽,十分精彩!)
齊格弗里德:德國著名英雄敘事詩《尼伯龍根之歌》里登場的英雄,他得到了擁有至高力的指環(huán),可以聽懂鳥語。他殺死過巨龍,沐浴過龍血,成為有最強(qiáng)肉體的不死男人。但卻因?yàn)殂逶r(shí)一片樹葉掉在了背上,肩胛骨下的一處成為致命弱點(diǎn)而被人殺死。(詳情請參閱瓦格納的《尼伯龍根的指環(huán)》)
洛基:最初被看作仁慈之神,因?yàn)槠浣艹龅牟拍芎屯饷捕话⑺股褡褰邮?,但身為巨人族的他生性喜歡喜歡挑撥其他神爭斗,還殺死了主神奧丁的兒子,被諸神囚禁,在諸神與巨人族的終末戰(zhàn)“諸神的黃昏”時(shí)爆發(fā),加入巨人族陣營戰(zhàn)斗,最后帶來了諸神的毀滅。
瑟特:住在火之國度的巨人,“諸神之黃昏”中率火巨人出戰(zhàn)。
赫爾:主宰地下世界的女神,據(jù)說是洛基的女兒,奧丁賦予她到冥界尼弗爾海姆,統(tǒng)治九界的權(quán)力。
焚里爾:北歐神話中最著名的魔獸,洛基的子女之一,巨大狼形怪物,傳說當(dāng)他張開嘴后上下鄂可以頂住天地,因其性格兇暴而被矮人族囚困,直到終末戰(zhàn)時(shí),他才脫困,并且吞下了太陽和主神奧丁。
托爾:著名的雷電之神,名字即“轟鳴者”的意思,諸神中最具怪力的神,以巨大鐵槌作戰(zhàn)。他的鐵槌也很著名,“托爾的鐵槌”在許多作品中幾乎成為了力量的代表。他還是豐饒之神,主管一切人類所必須經(jīng)歷的儀式,如婚喪嫁娶等。“諸神之黃昏”中托爾和世界蛇尤蒙岡多同歸于盡。尤蒙岡多是一條自己銜著自己的大蛇,象征無限。
北歐命運(yùn)三女神:掌握“存在”和“未來” 斯克爾特 掌握“必然”和“現(xiàn)在” 威爾珊迪
掌握命運(yùn)和過去 ???(沒找到。)
多瓦夫:矮人中的妖精族(奇怪的組合)。據(jù)說當(dāng)初是蛆蟲,因啃食了最初巨人尤米爾的遺體而獲得了人形和智慧。擁有天才的鍛造本領(lǐng),是武器和工藝品的杰出制造者,也就是奇幻小說中常常出現(xiàn)的矮人族設(shè)定的原形,代表人物很多,如《龍槍》中弗林特?;馉t。他們共同的特點(diǎn)為矮胖的身體,大胡子,手持戰(zhàn)斧,忠誠而脾氣暴躁。
BERSERK:巴薩卡,這個(gè)詞源于古代北歐語言,意思是“披著熊皮的人”后為“狂戰(zhàn)士”的稱謂。是奇幻作品中最受歡迎的職業(yè)設(shè)定之一??駪?zhàn)士受主神奧丁的加護(hù),戰(zhàn)斗中會(huì)陷入極度興奮的忘我狀態(tài),以超強(qiáng)的肉體打擊敵人,沒有恐懼,疼痛的感覺。嚴(yán)重者會(huì)陷入癲狂而死。
宙斯:希臘神話中的至高神,掌握雷電,所以又被稱為雷神。在母親蕾亞的支持下,殺了父親克洛諾斯,成為了第三代神王。性格極為好色,常背著妻子赫拉與其他女神 和凡人私通,私生子無數(shù)。
克洛諾斯:前奧林波斯神詆之一,天神烏拉諾和大地女神瑞亞之子,泰坦巨人中的最幼者,推翻父親成為第二代神王,其后卻遭到與父親同樣的命運(yùn)。
波塞冬:海之皇,宙斯的二哥,手持巨大三叉戟,統(tǒng)領(lǐng)海中所有生物。有被描寫為半人半魚的模樣,能呼風(fēng)喚雨。性格兇暴殘忍。
哈帝斯:宙斯,波塞冬,得墨忒爾的兄長,主管冥界,力量很強(qiáng),但性格平和。除了搶奪豐收女神得墨忒爾之女春之女神玻爾塞富涅為妻外,無它惡行。
瑞亞:希臘神話中的大地女神,是奧林波斯神系之前的古神,也是泰坦之母,她與烏拉諾生下了眾多希臘神詆。
帕拉斯。雅典娜:智慧女神和正義戰(zhàn)爭女神,宙斯和墨涅斯之女,她出生時(shí)宙斯頭部劇烈疼痛,之后用大斧劈開后,雅典娜手持長槍,身披戰(zhàn)甲從中跳出。是很受歡迎的神。因失手殺死好友帕拉斯而改名為帕拉斯。雅典娜。
阿波羅;太陽神,宙斯和勒托之子,月神和狩獵女神阿爾忒彌斯的兄長,希臘十二大神詆之一,又名赫利俄斯。主掌光明,醫(yī)藥,文學(xué),詩歌,音樂等。每天架天馬拉乘的的黃金車巡游天上一周。
阿爾忒彌斯:月神,狩獵女神,純潔之神。所以也被稱為處女的保護(hù)神。阿波羅的孿生妹妹。
阿瑞斯:戰(zhàn)神,是兇殘,狡詐,非理性的,為戰(zhàn)爭而戰(zhàn)爭的神。曾與工匠之神的妻子維納斯私通,被裝進(jìn)一張工匠之神特制的大網(wǎng)中而無法脫身。(維納斯原為羅馬神詆,后為希臘神話所吸收。)
赫爾墨斯:宙斯與阿特拉斯的女兒邁亞所生的兒子。腳生雙翼,速度如飛,成為天界眾神傳令的使者,后為旅人,商人,盜賊的保護(hù)神,經(jīng)常化為凡人下界幫助保護(hù)者。
狄俄涅索斯:酒神,拉丁文名字為巴卡斯,傳說中釀酒的發(fā)明人,形象為一手持酒杯,一手拿松果木神杖,后升為歡樂,文明之神。
赫拉克勒斯:宙斯與凡人的私生子,為神母赫拉所仇視,但在雅典娜的巧妙安排下,赫拉為其哺過乳。出生后既力大無窮,曾于搖籃中捏死過兩條巨蛇。成人后,完成了號稱不可能完成的十二件大功。因此其后升為大力神。因在完成十二件大功中替人類掃除了眾多妖魔怪獸,并解放了為宙斯囚禁的善神普羅米修斯,所以受人愛戴。富于反抗精神,曾不滿宙斯的專制而反抗神界。
刻耳柏洛斯:地獄的守門狗,三頭而蛇尾的魔獸,以青銅之聲攻擊敵人,是巨人和怪物所生的怪獸。
一、馬太效應(yīng)練級無至盡,現(xiàn)在網(wǎng)絡(luò)游戲似乎除了練級還是練級,一切都是為了練級...
是不是可以在游戲中加入年齡這種概念,即可以把在線時(shí)間換算成游戲中角色年齡,角色年齡只跟角色在線時(shí)間有關(guān),不管角色在線上做什么.而角色的各項(xiàng)技能又和角色年齡有關(guān),在各個(gè)年齡段練習(xí)不同的技能,打怪只是提高自己的技能階級.角色到達(dá)一定年齡階段角色技能會(huì)衰減....還想的不是很成熟..
所有東西都是對象.
程序就是對象的組合,對象之間通過消息聯(lián)系
對象就是類class的一個(gè)實(shí)例.類的最重要的特征就是能發(fā)什么樣的消息給對象.!
對象可以包含對象.封裝!
interface規(guī)定了可對一個(gè)特定對象發(fā)那些請求.
若只是簡單地繼承一個(gè)類,并不做其他任何事情,來自基礎(chǔ)類接口的方法就會(huì)直接照搬到衍生類。這意味著衍生類的對象不僅有相同的類型,也有同樣的行為,這一后果通常是我們不愿見到的。
等價(jià)與類似.新類型擁有舊類型的接口,但也包含了其他函數(shù),所以不能說它們是完全等價(jià)的
我們將這種把衍生類型當(dāng)作它的基本類型處理的過程叫作“Upcasting”(上溯造型)。
將一條消息發(fā)給對象時(shí),如果并不知道對方的具體類型是什么,但采取的行動(dòng)同樣是正確的,這種情況就叫作“多形性”(Polymorphism)。
在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,由于C++的引入而顯得尤為突出的一個(gè)問題是:所有類最終是否都應(yīng)從單獨(dú)一個(gè)基礎(chǔ)類繼承。在Java中(與其他幾乎所有OOP語言一樣),對這個(gè)問題的答案都是肯定的,而且這個(gè)終級基礎(chǔ)類的名字很簡單,就是一個(gè)“Object”。
上溯造型成一種更“通用”的類型。而是下溯造型成一種更“特殊”的類型
自我墮落了兩天了...
我該回到原來的生活中去了...
真的該回去了....
恩....努力,加油,我不要醬紫的反思!!!!
- - !
在狗海和叉叉海中被無情的蹂躪....
嗚嗚嗚嗚嗚嗚嗚嗚嗚嗚嗚嗚嗚嗚嗚嗚嗚嗚~~~~~
晶晶:
17號聽說你的噩耗....
一直 希望你能堅(jiān)持的走回來 ...但....
雖然你我并不相識...我衷心祝福你在天堂的路要走好...祝福.....
《軒轅本紀(jì)》有神獸白澤的故事:“(黃)帝巡狩,東至海,登桓山,于海濱得白澤神獸,能言,達(dá)于萬物之情。因問天下鬼神之事。自古精氣為物、游魂為變者凡萬一千五百二十種,白澤言之;帝令以圖寫之,以示天下。”
白澤 昆侖山上的神獸,著名的神獸,渾身雪白,能說人話,通萬物之情,很少出沒,除非當(dāng)時(shí)有圣人治理天下,才奉書而至。
夔 出生于東海流破山,其形狀如牛,無角,身形巨大,昏黑色,但只有一只腳支撐,也叫獨(dú)腳夔。
夔是一種惡獸,能放出如同日月般的光芒和雷鳴般的叫聲。
鳳凰 大家很熟悉的神鳥了,頭像雞,頷像燕,頸像蛇,胸象鴻,尾像魚。五德之鳥。
麒麟 是品性仁慈、妖力強(qiáng)大的生物,諳悟世理,通曉天意,可以聆聽天命。人的世界有十二個(gè)國家,分別由十二個(gè)王來統(tǒng)治。王不是以出身或功績來評選,而是由天命來決定。麒麟就是傳達(dá)天命,為自己的國家選出王者的神獸。
梼杌
原本只是令人害怕厭惡的惡人,根據(jù)《左傳》文公十八年:“顓頊有不才子,不可教訓(xùn),不知詘言,告之則頑,舍之則囂,傲狠明德,以亂天常,天下之民,謂之梼杌。”這個(gè)不可教訓(xùn)的惡人死后最終演化成上古著名的魔獸,《神異經(jīng)·西荒經(jīng)》記“西方荒中,有獸焉,其狀如虎而犬毛,長二尺,人面,虎足,豬口牙,尾長一丈八尺,攪亂荒中,名梼杌。”已然是一派怪異扭曲的形象,與其說是魔獸不如說是生化實(shí)驗(yàn)失敗核泄漏的產(chǎn)物。
獬豸
古代神裁制度下產(chǎn)生的著名神獸,又被稱為“法獸”。根據(jù)《論衡》和《淮南子·修務(wù)篇》的說法它身形大者如牛,小者如羊,樣貌大致類似麒麟,全身長著濃密黝黑的毛發(fā),雙目明亮有神,額上通常有一只獨(dú)角,據(jù)傳角斷者即死,有被見到長有雙翼,但多數(shù)沒有翅膀。擁有很高的智慧,能聽懂人言,對不誠實(shí)不忠厚的人就會(huì)用角抵觸。后世常將普通羊飼養(yǎng)在神廟,用來代替獬豸
吼
形如兔,兩耳尖長,僅長尺余。獅畏之,蓋吼溺著體即腐。
《偃曝馀談》有載。
重明鳥
在《拾遺記》中說,堯在位七十年,有積支之國,獻(xiàn)明鳥,一名雙晴言在目。狀如雞,鳴似鳳。解落毛羽,用肉翅而飛。能摶逐獸狼,使妖災(zāi)群惡不能為害。或一年來數(shù)次,或數(shù)年都不來。國人都全灑掃門戶,以留重明。如重明鳥未到的時(shí)候,國人或刻木,或造銅像,?
為此鳥的形象,放在明戶之間,則魑魅之類,自然退伏。所以到了現(xiàn)在,都刻木像、造銅像或畫圖像,故現(xiàn)在畫雞于門上。
華方
在《山海經(jīng).西次三經(jīng)》中,有在章峨之山,有一種鳥,型狀如鶴,一足,有紅色的紋和白喙。就是叫做華方。《海外南經(jīng)》:「華方鳥在東方,青水西,只有一只腳。」而《淮南子.汜論訓(xùn)》中說,木生畢方。因而有說畢方是木精所變的,而形狀是鳥、一足、不食五谷。《在文選.張衡〔東京賦〕》中說:「華方...老父神,如鳥,兩足一翼,常銜火在人家作怪災(zāi)也?!苟俄n非子.十過》中說:「昔者黃帝合鬼神于西秦山之上,駕象車而蛟龍,畢方并害。袁珂說華方是鳳,鳳為太陽鳥,故「見則其吧有訛火」?!恶壯拧罚骸府叿?,兆火鳥也?!锅P即為神,也是災(zāi)難的象征。《淮南子.本經(jīng)訓(xùn)》:「堯之時(shí)...大風(fēng)為害,堯乃使羿...繳風(fēng)于青邱之澤?!勾箫L(fēng)即大鳳。《淮南子》「木生畢方」是受五行思想的影響所玫,意即木生火。因畢方為火鳥故用畢方代火,非指畢方生于木。
白虎
在中國,白虎是戰(zhàn)神、殺伐之神?;⒕哂斜苄啊㈧鼮?zāi)、祈豐及懲惡的揚(yáng)善、發(fā)財(cái)致富、喜結(jié)良緣等多種神力。而它是四靈之一,當(dāng)然也|是由星宿變成的。是由二十八星宿中,西方七宿:奎、婁、胃、昂、畢、觜、參。所以是西方的代表,而它的白,是因是西方,西方在五行中屬金,色是白的。所以它叫白虎不是因它是白色,而是從五行中說的了。
玄武
玄武是一種由龜和蛇組合成的一種靈物。玄武的本意就是玄冥,武、冥古音是相通的。武,是黑色的意思;冥,就是陰的意思。玄冥起初是對龜卜的形容:龜背是黑色的,龜卜就是請龜?shù)节らg去詣問袓先,將答案帶回來,以卜兆的形式顯給世人。因此,最早的玄武就是烏龜。以后,玄冥的含義不斷地?cái)U(kuò)大。龜生活在江河湖海(包括海龜),因而玄冥成了水神;烏龜長壽,玄冥成了長生不老的象征;最初的冥間在北方,殷商的甲骨占卜即「其卜必北向」,所以玄冥又成了北方神
朱雀
鳳凰在中國來說,是一種代表幸福的靈物。它的原形有很多種。如錦雞、孔雀、鷹鷲、鵠、玄鳥(燕子)等等...又有說是佛教大鵬金翅鳥變成的。鳳凰神話中說的鳳凰是有雞的腦袋、燕子的下巴、蛇的頸、魚的尾、有五色紋。又請鳳是有五種品種,以顏色來分的:紅是鳳、青是鸞鳥、白是天鵝、另有黃和紫的鳳凰又可說是朱雀或玄鳥。朱雀是四靈之一,也和其它三種一樣,它是出自星宿的,是南方七宿的總稱:井、鬼、柳、星、張、翼、軫。聯(lián)想起來就是朱雀了。朱為赤色,像火,南方屬火,故名鳳凰。它也有從火里重身的特性,和西方的不死鳥一樣,故又叫火鳳凰。
青龍
在中國,龍的地位就遠(yuǎn)高于印度。因在中國,龍是神物、是至高無上的,也是皇帝的象征。也是東方的代表、五行中是屬木的,也因青色是屬木的,故此有左青龍、右白虎的說法。
星宿的是用廿八星宿中,東方七宿-角、亢、氐、房、心、尾、箕,古人把它們想象成為龍的形象,因位于東方,按陰陽五行給五方配色之說,東方色青,故名「青龍」。又有龍性淫旳說法,和牛交時(shí)生麒麟、和豬交時(shí)生象。又有龍生九子,都不像龍的說法,是這樣的:大兒是叫囚牛:它平身喜愛音樂,故常立在琴頭上。如漢族的胡琴,白族的三弦琴等。而蒙古的馬頭琴也可能是囚牛的變種。二兒子是睚毗:它平身愛殺所以多被安在兵器上,用以威攝敵軍。同時(shí)又用在儀仗上,以顯得更加威嚴(yán)。三兒是嘲風(fēng):是只獸形龍,樣子有點(diǎn)像狗,它善于瞭望,故多安在殿角上。據(jù)說可以威攝妖魔、消滅災(zāi)禍。第四兒是蒲牢:喜歡吼叫,人們就把它安在鐘上,大多是蒲牢的形象。據(jù)說它是住在海濱的,但卻十分怕鯨魚,一但鯨魚發(fā)起攻擊,它就會(huì)嚇得亂叫。故人們把木杵造成鯨的形狀,以令銅鐘格外響亮。第五兒是狻猊:形似獅子。是外來品,隨佛教傳入中國的,所以性格有點(diǎn)像佛。它好安靜、又愛煙火。所以往往把它安在佛位上或香爐上,讓它為佛門護(hù)法。第六兒是霸下:又名赑屃,樣子似龜。相傳上古時(shí)它常背起三山五岳來興風(fēng)作浪。后被夏禹收服,為夏禹立下不少汗馬功勞。治水成攻后,夏禹就把它的功績,讓它自己背起。故中國的石碑多由它背起的。第七兒是狴犴:又名憲章,樣子像虎。相傳它主持正義,而且能明是非,因此它被安在獄門上下、衙門大堂兩則、以及官員出巡時(shí)肅靜回避的牌上端,以維護(hù)公堂的肅然之氣。第八兒是負(fù)屃:因它喜愛文學(xué),故多安在石碑的兩則。么子是螭吻:又名鴟尾,魚形的龍。相傳是大約在南北朝時(shí),由印度「摩竭魚」隨佛教傳入的。它是佛經(jīng)中,雨神座下之物,能夠滅火。故此,螭吻由此變化出來,所以它多安在屋脊兩頭,作消災(zāi)滅火的功效。
饕餮
《神異經(jīng)·西南荒經(jīng)》:“西南方有人焉,身多毛,頭上戴豕。貪如狠惡,積財(cái)而不用,善奪人谷物(上二句原作“好自積財(cái),而不食人谷”,據(jù)《史記·五帝本紀(jì)》正義引改)。強(qiáng)者奪老弱者,畏強(qiáng)而擊單,名曰饕餮?!洞呵铩拂吟颜?,縉云氏之不才子也。”
《左傳·文公十八年》云:“縉云氏有不才子,貪于飲食,冒于貨賄,侵欲崇侈,不可盈厭;聚斂積實(shí),不知紀(jì)極;不分孤寡,不恤窮匱。天下之民以比三兇,謂之饕餮。”《神異經(jīng)》所謂“《春秋》言”,即此。
《呂氏春秋·先識》云:“周期著饕餮,有首無身,食人未咽,害及其身。”宋羅泌《路史·蚩尤傳》注云:“蚩尤天符之神,狀類不常,三代彝器,多者蚩尤之像,為貪虐者之戒。其像率為獸形,傅以肉翅。”揆其所說,殆亦饕餮。
《左傳》謂饕餮是“縉云氏不才子”,而《史記·五帝本紀(jì)》集解引賈玄曰:“縉云氏,姜姓也,炎帝之苗裔,當(dāng)黃帝時(shí)在縉云之官也。”蚩尤姜姓,亦為炎帝之苗裔(《路史·蚩尤傳》),故蚩尤很可能即此縉云氏之“不才子”饕餮。又《山海經(jīng)·北次二經(jīng)》所記“狍(號鳥)”,郭璞注以為即《左傳》之饕餮。
附:狍(號鳥):《山海經(jīng)·北次三經(jīng)》:“鉤吾之山……有獸焉,其狀羊身人面,其目在腋下,虎齒人爪,其音如嬰兒,名曰狍(號鳥),是食人。”郭璞注:“為物貪(忄林),食人未盡,還害其身,像在夏鼎,《左傳所謂》饕餮是也。”
遠(yuǎn)飛雞
又名翻明雞、目羽雞。紫色,翅膀下亦有眼睛。日出夕還。(鴿子的異種)
《洞冥記》有載。
腓腓
有點(diǎn)象貍,白色的尾巴。養(yǎng)之可以解憂愁。(高級寵物)
《山海經(jīng)(中山經(jīng))》有載。
諸犍
人面豹身,牛耳一目,有長尾,能發(fā)巨聲。行走時(shí)銜著尾巴,休息時(shí)盤著尾巴。
《山海經(jīng)(北山經(jīng))》有載。
混沌
長毛四足,如犬,有腹無五臟。抵觸善人,憑依惡人。(絕對惡靈是也)
?。碛谢煦缟裰f,另行說明,不歸此處)
《神異經(jīng)(西荒經(jīng))》有載。
應(yīng)聲蟲
居于人腹。宿主每發(fā)聲,腹中便有小聲效之,且會(huì)越來越大。以雷丸可治。(腹語?)
《續(xù)墨客揮犀》、《隋唐嘉話》有載。
慶忌
又名要離。澤精,人形,大概十幾公分高。黃衣黃帽,稱黃色小車,日馳千里。叫它的名字可使之報(bào)信(亦有捉魚之說)。歷史上也有人名(吳王僚子,猛將)、塔名為此。
《管子(水地)》、《太平預(yù)覽》有載。
| |||||||||
日 | 一 | 二 | 三 | 四 | 五 | 六 | |||
---|---|---|---|---|---|---|---|---|---|
26 | 27 | 28 | 29 | 30 | 31 | 1 | |||
2 | 3 | 4 | 5 | 6 | 7 | 8 | |||
9 | 10 | 11 | 12 | 13 | 14 | 15 | |||
16 | 17 | 18 | 19 | 20 | 21 | 22 | |||
23 | 24 | 25 | 26 | 27 | 28 | 29 | |||
30 | 31 | 1 | 2 | 3 | 4 | 5 |