java高級(jí)軟件工程師面試題_第1頁(yè)
java高級(jí)軟件工程師面試題_第2頁(yè)
java高級(jí)軟件工程師面試題_第3頁(yè)
java高級(jí)軟件工程師面試題_第4頁(yè)
java高級(jí)軟件工程師面試題_第5頁(yè)
已閱讀5頁(yè),還剩26頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

精選工程方案文件編號(hào):2020年6

版本號(hào):A

java高級(jí)軟件工程師面試題修改號(hào):1

頁(yè)次:1.0

編制:________________

會(huì)簽:________________

審核:________________

批準(zhǔn):________________

發(fā)布日期:________________

實(shí)施日期:

java高級(jí)軟件工程師面試題

招聘java高級(jí)工程師,職位描述如下,有興趣的加0交流,打擾了,謝謝!

職位名稱:java高級(jí)開發(fā)工程師(急)

職位描述:互聯(lián)網(wǎng)產(chǎn)品的開發(fā)和維護(hù)。

職位要求:1.熟悉JAVA、J2EE體系結(jié)構(gòu),熟練掌握Spring、Struts>Hibernate、ibatis的開

發(fā)技術(shù)。

2.熟悉MySql等數(shù)據(jù)庫(kù)開發(fā),熟練掌握SQL語(yǔ)句,有較好的數(shù)據(jù)庫(kù)設(shè)計(jì)能力。

3.熟練掌握HTML、javascript、ajax等web開發(fā)技術(shù),熟悉http協(xié)議。

4.熟悉SVN、Maven、Junit等工具。

5.具有良好的學(xué)習(xí)能力、溝通能力,樂(lè)于承擔(dān)工作壓力。

6.有大型門戶或社區(qū)網(wǎng)站開發(fā)經(jīng)驗(yàn)者優(yōu)先。

職位所在城市:杭州

職位所在行業(yè):高科技

1.說(shuō)一下struts中常用的對(duì)象

2.怎樣整合apatche和tomcat

3.說(shuō)一下在linx系統(tǒng)中搭建服務(wù)器

4.簡(jiǎn)述一下sqlserver建模

5.請(qǐng)寫一個(gè)程序,把一個(gè)10進(jìn)制轉(zhuǎn)換成16進(jìn)制

6.表student列idnameageWA(本科以上,大專,高中,初中以下)畢業(yè)學(xué)校ID,

學(xué)校信息表

問(wèn):統(tǒng)計(jì)出文化學(xué)歷本科以上,大專,高中,初中以下,每個(gè)年齡各有多少人(一條

SQL語(yǔ)句)

7.有兩位少年從隧道的一端向另一端行走.當(dāng)他們走過(guò)隧道的五分之二時(shí),發(fā)現(xiàn)隧

道外面迎來(lái)一輛火車.火車很快就要進(jìn)入隧道.兩位少年向來(lái)時(shí)隧道跑去.兩位少

年都是每小時(shí)10公里.兩位在千鈞一發(fā)跑出了隧道.假設(shè)火車速度恒定,并且兩位

少年都在瞬間達(dá)到最大速度,請(qǐng)問(wèn)火車的速度

8.請(qǐng)寫出常用的oracle語(yǔ)句及說(shuō)明,存儲(chǔ)過(guò)程的語(yǔ)句及說(shuō)明

幾個(gè)JAVA高級(jí)軟件工程師筆試面試題:

一、tomcat有哪些性能調(diào)優(yōu)方法,請(qǐng)舉例說(shuō)明

二、Spring中bean的作用域有哪些

三、struts?flstruts1有哪些區(qū)別

四、相比于主要有哪些新特性

五、如何理解軟件的模塊獨(dú)立性

六、如何設(shè)計(jì)實(shí)現(xiàn)外網(wǎng)數(shù)據(jù)庫(kù)和內(nèi)網(wǎng)數(shù)據(jù)庫(kù)的數(shù)據(jù)交換

七、Spring最有用的功能是什么舉例說(shuō)明IOC和AOP的作用。

八、關(guān)于sql的面試題:sql語(yǔ)句性能調(diào)優(yōu)的方法有哪些

九、關(guān)于sql的筆試題:假設(shè)有如下表:

TABLE:test

寫一條SQL語(yǔ)句,選擇所有a=l或b=2的記錄,使得a=l且b=2的記錄排在最

前面,并且a=l且b=2的記錄按id降序排列。

1、類、對(duì)象的概念:

1)類:具有共同屬性和行為的對(duì)象的抽象。類是創(chuàng)建對(duì)象的模板。

2)對(duì)象:現(xiàn)實(shí)世界中的實(shí)體。在計(jì)算機(jī)中,是指可標(biāo)識(shí)的存儲(chǔ)區(qū)域。

3)類是對(duì)象的抽象、對(duì)象是類的實(shí)例。

2、抽象:是從特定的實(shí)例中抽取共同性質(zhì)形成一般化概念的過(guò)程。

3、接口與抽象類:

1)接口和抽象類都用于抽象,接口是抽象類的抽象。

2)接口中只有方法聲明,沒有實(shí)現(xiàn)(無(wú)方法體);在接口中聲明的方法具有public和abstract

屬性,一個(gè)類可以實(shí)現(xiàn)多個(gè)接口(即多繼承),接口以,,‘分隔;接口中的方法必須全部實(shí)現(xiàn)。

3)抽象類可以有部分方法實(shí)現(xiàn),抽象類必須通過(guò)繼承才能使用。

4,內(nèi)部類(InnerClass):

1)內(nèi)部類是嵌套在另一個(gè)類中的類。

2)內(nèi)部類用于名稱隱藏和程序代碼的組織,另外內(nèi)部類擁有直接訪問(wèn)其外部類所有成員(包

括private的)的權(quán)限(無(wú)需任何關(guān)鍵字修飾)。

3)內(nèi)部類不可以在其他類或main方法里實(shí)例化,必須使用如下方法(非靜態(tài)內(nèi)部類)

外部類.內(nèi)部類對(duì)象名=new外部類O.new內(nèi)部類();

靜態(tài)內(nèi)部類調(diào)用方式:

外部類.內(nèi)部類對(duì)象名=new外部類.內(nèi)部類0;

4)非靜態(tài)內(nèi)部類不可以聲明靜態(tài)成員;靜態(tài)內(nèi)部類的非靜態(tài)成員可以訪問(wèn)其外部類的靜態(tài)成

員,聲明為靜態(tài)的成員不可以訪問(wèn)外部的非靜態(tài)成員。

5、訪問(wèn)修飾符限制:

Privateprotectedfriendly(default)public

同類YYYY

同包不同類NYYY

同包子類NYYY

不同包不同類NNNY

不同包子類NYNY

6、Static關(guān)鍵字的使用:

1)類成員,直接使用類名.成員調(diào)用。

2)靜態(tài)方法只能訪問(wèn)靜態(tài)成員。

3)靜態(tài)方法不能使用this、super關(guān)鍵字。

4)靜態(tài)方法不能被非靜態(tài)方法重寫或重載。

7、final關(guān)鍵字:

1)被final修飾的變量為常量不能改變。

2)被final修飾的方法不可以重寫。

3)被final修飾的類不能被繼承。

8、abstract關(guān)鍵字:

1)被abstract修飾的類不能實(shí)例化。

2)被abstract修飾的方法只能在子類中實(shí)現(xiàn)。

9、native關(guān)鍵字:非Java語(yǔ)言的編寫,例如JNI技術(shù)。

10、synchronized關(guān)鍵字:多線程的同步訪問(wèn)控制。

11、分類列舉服務(wù)器和組件技術(shù):

1)服務(wù)器端技術(shù):Jsp、Servlet;

2)組件技術(shù):JavaBean、EJB。

12、Http與Https:Https即多了安全的Http,s(SecuritySocketLayer)指加密套接字協(xié)議層(簡(jiǎn)

寫SSL)。

13、OSI(OpenSystemInterconnection)網(wǎng)絡(luò)抽象模型:

1)由國(guó)際標(biāo)準(zhǔn)化組織(ISO)提出。

2)將互聯(lián)網(wǎng)分為七層,從下至上分別為:物理層(physical)、數(shù)據(jù)鏈路層(datalink)、網(wǎng)絡(luò)

層(network)>傳送層(transport)、會(huì)話層(session)>表示層(presentation)、應(yīng)用層(application)o

底層通過(guò)提供接口支持上層功能。各層詳解:

物理層:LAN/ATM,為硬件層。

數(shù)據(jù)鏈路層:LAN/ATM

網(wǎng)絡(luò)層:IP協(xié)議,IOS

傳輸層:TCP/UDP協(xié)議,支持JavaSocket。

會(huì)話層:

表示層:HTML、XML

應(yīng)用層:HTTP協(xié)議,使用JavaServlet/JSP

〈第八層(Web服務(wù)層):SOAP/UDDI>

14、J2EE的容器與服務(wù)器:

容器負(fù)責(zé)EJB組件中生命周期的控制;

服務(wù)器包含在容器外,提供系統(tǒng)級(jí)操作底層服務(wù),包括事務(wù)、事件、多線程……。

15、繼承限制:

父類對(duì)象不可以賦給子類對(duì)象,因?yàn)樽宇惪赡芫哂懈嗟某蓡T,反之可以。

16、邏輯操作:c=(a>b)a:b;等同于下式

if(a>b)c=a;elsec=b;

17、列舉常見集合框架類型:

1)List、SetsMap。由這三個(gè)接口實(shí)現(xiàn)出ArrayList、LinkedList、HashSet>TreeSet>HashMap、

TreeMap等常用集合框架。

2)Vector屬于重量級(jí)組件不推薦使用。

3)Map類型維護(hù)鍵/值對(duì),Hashtable與HashMap相近但效率略低于HashMap、高于TreeMap,

TreeMap優(yōu)點(diǎn)是可以排序。

4)Set類型可裝入唯一值,HashSet效率高于TreeSet但TreeSet可以維護(hù)內(nèi)部元素的排序狀態(tài)。

5)List類型可按某種特定順序維護(hù)元素。ArrayList允許快速隨機(jī)訪問(wèn),但如果添加或刪除位

于中間的元素時(shí)效率很低;LikedList提供最佳循序訪問(wèn)及快速的中間位置添加刪除元素,并有

addFirst、addLast^getFirst、getLast、removeFirst、removeLast方法。

18、面向?qū)ο蟮奶卣鳎?/p>

1)繼承:通過(guò)子類可以實(shí)現(xiàn)繼承,子類繼承父類的所有狀態(tài)和行為,同時(shí)添加自身的狀態(tài)和

行為。

2)封裝:將代碼及處理數(shù)據(jù)綁定在一起的一種編程機(jī)制,該機(jī)制保證程序和數(shù)據(jù)不受外部干

擾。

3)多態(tài):包括重載和重寫。重載為編譯時(shí)多態(tài),重寫是運(yùn)行時(shí)多態(tài)。重載必須是同類中名稱

相同參數(shù)不同(包括個(gè)數(shù)不同和類型不同),但返回類型不同不構(gòu)成重載;重寫發(fā)生于子類對(duì)父

類的覆蓋,子類繼承父類方法名相同、參數(shù)列表相同、返回類型相同才構(gòu)成重寫。

19、Java命名規(guī)范:必須以英文字母、下劃線或$開始,其余可以有數(shù)字但不允許包

含空格,且組合后的名稱不能是Java關(guān)鍵字或保留字。

匈牙利命名法:以m開始為類成員變量,以g開始為全局變量,以v開始為本地局部變量,常

量命名一般不以下劃線、美元符開始。

駝峰命名:一般稱由多個(gè)單詞或縮寫組成的變量名,并且該變量名每個(gè)單詞首字母均為大寫(一

般類名全部首字母大寫,方法或?qū)傩悦谝粋€(gè)字母小寫)的稱為駝峰命名。

20、Java語(yǔ)言共包含47個(gè)關(guān)鍵字。

21、設(shè)計(jì)模式:

一個(gè)設(shè)計(jì)模式描述了一個(gè)被證實(shí)可行的方案。這些方案非常普遍,是具有完整定義的最常用的

模式。一般模式有4個(gè)基本要素:模式名稱(patternname)>問(wèn)題(problem解決方案(solution)、

效果(consequences)o

常見23種模式概述:

1)抽象工廠模式(AbstractFactory):提供一個(gè)創(chuàng)建一系列相關(guān)或相互依賴對(duì)象的接口,而無(wú)

需指定它們具體的類。

2)適配器模式(Adapter):將一個(gè)類的接口轉(zhuǎn)換成客戶希望的另外一個(gè)接口。適配器模式使

得原本由于接口不兼容而不能一起工作的類可以一起工作。

3)橋梁模式(Bridge):將抽象部分與它的實(shí)現(xiàn)部分分離,使它們都可以獨(dú)立地變化。

4)建造模式(Builder):將一個(gè)復(fù)雜對(duì)象的構(gòu)建與它的表示分離,使同樣的構(gòu)建過(guò)程可以創(chuàng)

建不同的表示。

5)責(zé)任鏈模式(ChainofResponsibility):為解除請(qǐng)求的發(fā)送者和接收者之間耦合,而使多個(gè)

對(duì)象都有機(jī)會(huì)處理這個(gè)請(qǐng)求。將這些對(duì)象連成一條鏈,并沿著這條鏈傳遞該請(qǐng)求,直到有一個(gè)對(duì)

象處理它。

6)命令模式(Command):將一個(gè)請(qǐng)求封裝為一個(gè)對(duì)象,從而可用不同的請(qǐng)求對(duì)客戶進(jìn)行參

數(shù)化;對(duì)請(qǐng)求排隊(duì)或記錄請(qǐng)求日志,以及支持可取消的操作。

7)合成模式(Composite):將對(duì)象組合成樹形結(jié)構(gòu)以表示“部分一整體”的層次結(jié)構(gòu)。它使得

客戶對(duì)單個(gè)對(duì)象和復(fù)合對(duì)象的使用具有一致性。

8)裝飾模式(Decorator):動(dòng)態(tài)地給一個(gè)對(duì)象添加一些額外的職責(zé)。就擴(kuò)展功能而言,它能

生成子類的方式更為靈活。

9)門面模式(Facade):為子系統(tǒng)中的一組接口提供一個(gè)一致的界面,門面模式定義了一個(gè)高

層接口,這個(gè)接口使得這一子系統(tǒng)更加容易使用。

10)工廠方法(FactoryMethod):定義一個(gè)用于創(chuàng)建對(duì)象的接口,讓子類決定將哪一個(gè)類實(shí)

例化。FactoryMethod使一個(gè)類的實(shí)例化延遲到其子類。

11)享元模式(Flyweight):運(yùn)用共享技術(shù)以有效地支持大量細(xì)粒度的對(duì)象。

12)解釋器模式(Interpreter):給定一個(gè)語(yǔ)言,定義它的語(yǔ)法的一種表示,并定義一個(gè)解釋器,

該解釋器使用該表示解釋語(yǔ)言中的句子。

13)迭代子模式(Iterator):提供一種方法順序訪問(wèn)一個(gè)聚合對(duì)象中的各個(gè)元素,而又不需暴

露該對(duì)象的內(nèi)部表示。

14)調(diào)停者模式(Mediator):用一個(gè)中介對(duì)象來(lái)封裝一系列的對(duì)象交互。中介者使各對(duì)象不

需要顯式的內(nèi)部表示。

15)備忘錄模式(Memento):在不破壞封裝性的前提下,捕獲一個(gè)對(duì)象的內(nèi)部狀態(tài),并在該

對(duì)象之外保存這個(gè)狀態(tài)。這樣以后就可將該對(duì)象恢復(fù)到保存的狀態(tài)。

16)觀察者模式(Observer):定義對(duì)象間的一種一對(duì)多的依賴關(guān)系,以便當(dāng)一個(gè)對(duì)象的狀態(tài)

發(fā)生改變時(shí),所有依賴于它的對(duì)象都得到通知并自動(dòng)刷新。

17)原始模型模式(Prototype):用原型實(shí)例指定創(chuàng)建對(duì)象的種類,并且通過(guò)拷貝這個(gè)原型創(chuàng)

建新的對(duì)象。

18)代理模式(Proxy):為其他對(duì)象提供一個(gè)代理以控制對(duì)這個(gè)對(duì)象的訪問(wèn)。

19)單例模式(Singleton):保證一個(gè)類僅有一個(gè)實(shí)例,并提供一個(gè)訪問(wèn)它的全局訪問(wèn)點(diǎn)。

20)狀態(tài)模式(State):允許一個(gè)對(duì)象在其內(nèi)部狀態(tài)改變時(shí)改變它的行為。對(duì)象看起來(lái)似乎修

改了它所屬的類。

21)策略模式(Strategy):定義一系列的算法,把它們一個(gè)個(gè)封裝起來(lái),并且使它們可相互替

換。本模式使得算法的變化可獨(dú)立于使用它的客戶。

22)模板模式(TemplateMethod):定義一個(gè)操作中的算法的骨架,而將一些步驟延遲到子類

中。模板方法使得子類可以不改變一個(gè)算法的結(jié)構(gòu)即可重定義該算法的某些特定步驟。

23)訪問(wèn)者模式(Visitor):表示一個(gè)作用于某對(duì)象結(jié)構(gòu)中的各元素的操作。該模式可以實(shí)現(xiàn)

在不改變各元素的類的前提下定義作用于這些元素的新操作。

1、你認(rèn)為一個(gè)項(xiàng)目如何進(jìn)行才正確(比如:盡一切可能快的完成任務(wù)或完全按照類似CMM

來(lái)操作)

根據(jù)林銳博士的觀點(diǎn):企業(yè)的根本目標(biāo)是合法地賺取盡可能多的利潤(rùn),使企業(yè)利益最大化。企

業(yè)所有的特定目標(biāo)和行動(dòng)都是圍繞上述根本目標(biāo)開展的,任何背離根本目標(biāo)的行動(dòng)都將對(duì)企業(yè)造

成傷害,應(yīng)當(dāng)杜絕。

基于此任何人都不要強(qiáng)調(diào)我將嚴(yán)格遵守XX模式,帶領(lǐng)團(tuán)隊(duì)開發(fā)出具有XX等級(jí)的產(chǎn)品,企業(yè)

需要的是能夠帶領(lǐng)團(tuán)隊(duì)按時(shí)、合格的開發(fā)出產(chǎn)品的Managero

2、你經(jīng)??椿蜃屑?xì)研讀過(guò)的書有哪些

不用回答你看過(guò)的課本,枚舉幾個(gè)經(jīng)典的當(dāng)然前提是必須真的看過(guò)至少瀏覽過(guò)主題和目錄。比

如《Java編程思想》、《Java模式》、《人月神話》等,由于將來(lái)要做的是team中的替補(bǔ)leader或

真正的leader所以你必須說(shuō)出軟工的東西。

3、你認(rèn)為你應(yīng)聘我們公司的項(xiàng)目經(jīng)理,你自身的優(yōu)勢(shì)在哪

1)融洽,沒有領(lǐng)導(dǎo)希望你帶領(lǐng)團(tuán)隊(duì)每天打嘴仗然后他還要去開屁股(Sorry,這似乎不很文明),

你必須說(shuō)明你能在以往團(tuán)隊(duì)中與其他人和諧相處。

2)技術(shù),千萬(wàn)不要謙虛,對(duì)方要的就是技術(shù)過(guò)硬、能力出眾的人才,你只需要說(shuō)明你成功解

決過(guò)什么難題并且你對(duì)J2EE、XX中間件、XX系統(tǒng)有多么的熟悉。

4、如果給你一個(gè)Team,公司決定讓你的Team開發(fā)A產(chǎn)品,0K這恰好是你的強(qiáng)項(xiàng),你們很

快開發(fā)出來(lái)了,但很沮喪的結(jié)果是它(你們的產(chǎn)品)沒有銷路;經(jīng)過(guò)討論公司又決定讓你的Team

開發(fā)B產(chǎn)品,0K這恰好又是你的強(qiáng)項(xiàng),你們很快開發(fā)出來(lái)了,但很沮喪的結(jié)果是它(你們的產(chǎn)

品)又沒有銷路。請(qǐng)問(wèn)你怎么面對(duì)這個(gè)問(wèn)題,你是否覺得決策層很無(wú)能甚至要推翻他或者去一個(gè)

更有前途的公司

不要以為這個(gè)故事很單純,這應(yīng)該是人力在考核你。你一定要告訴她(人力多半是女的),我

個(gè)人對(duì)于失敗的項(xiàng)目肯定會(huì)難過(guò)(是的,我想了很久才想出“難過(guò)”這個(gè)詞,它很中性),不過(guò)我

認(rèn)為這恰恰認(rèn)證了公司在革新和新技術(shù)探索方面的魄力(自己想怎么說(shuō),如果天下人都說(shuō)這句那

才是悲劇呢),我肯定會(huì)以個(gè)人的名義向領(lǐng)導(dǎo)層提出我自己的建議和看法當(dāng)然它未必正確,我不

會(huì)離開公司,因?yàn)橛悬c(diǎn)小挫折未嘗不是好事。(你應(yīng)該在這個(gè)問(wèn)題上好好想想,盡量發(fā)揮到10

分鐘)

5、你認(rèn)為項(xiàng)目中最重要的是哪些過(guò)程

分析、設(shè)計(jì)階段(也可以加上測(cè)試,但千萬(wàn)別說(shuō)編碼或開發(fā)階段),根據(jù)《人月神話》的觀點(diǎn):

1/3計(jì)劃;1/6編碼;1/4構(gòu)件測(cè)試和早期系統(tǒng)測(cè)試;1/4系統(tǒng)測(cè)試,所有的構(gòu)件已完成

但根據(jù)國(guó)內(nèi)目前的狀況一般公司不會(huì)有很多的分析與設(shè)計(jì)時(shí)間(這取決于公司規(guī)模和時(shí)間成

本),這樣在一個(gè)工期很緊張的項(xiàng)目中我們應(yīng)該盡量分配出進(jìn)度優(yōu)先級(jí)來(lái),首先拿出客戶最希望

看到的和最能證明成果的東西來(lái),其他的留待2期甚至3期去作,你可以告訴客戶需要進(jìn)一步調(diào)

試(專業(yè)人員的欺騙手段,實(shí)際上就是在進(jìn)行后續(xù)的開發(fā))。

6、如果給你一個(gè)4~6個(gè)人的Team,那么你怎么分配他們、管理他們

管理能力和經(jīng)驗(yàn)的綜合題,可能沒有人有相同的觀點(diǎn),那你可以按照某些思路來(lái)側(cè)面解答:我

會(huì)挑選一個(gè)技術(shù)過(guò)硬的人作為我的替補(bǔ)和項(xiàng)目的輕騎兵,是的團(tuán)隊(duì)中必須有機(jī)動(dòng)人員,否則你的

項(xiàng)目十有八九會(huì)夭折。其他的人會(huì)被平均的分配任務(wù)。

我們會(huì)在每周進(jìn)行全面的任務(wù)分配,每個(gè)人獲取一周的大概工作,然后每天的工作由他自己完

成并匯報(bào)。(很好,如果答出這些就差不多了,多說(shuō)可能會(huì)出現(xiàn)漏洞)

7、簡(jiǎn)述常用的軟件開發(fā)文檔。

1)可行性研究報(bào)告(某些公司或模型沒有)

2)項(xiàng)目開發(fā)計(jì)劃

3)軟件需求說(shuō)明書(必有)

4)數(shù)據(jù)要求說(shuō)明書

5)概要設(shè)計(jì)說(shuō)明書(必有)

6)詳細(xì)設(shè)計(jì)說(shuō)明書(必有)

7)數(shù)據(jù)庫(kù)設(shè)計(jì)說(shuō)明書(必有)

8)用戶手冊(cè)(一般會(huì)有)

9)操作手冊(cè)(必有)

10)模塊開發(fā)卷宗

11)測(cè)試計(jì)劃(必有)

12)測(cè)試分析報(bào)告

13)開發(fā)進(jìn)度月報(bào)

14)項(xiàng)目開發(fā)總結(jié)報(bào)告

8、簡(jiǎn)述類的關(guān)系。

1)當(dāng)一個(gè)類是“一種”另一個(gè)類時(shí):is-a關(guān)系

2)當(dāng)兩個(gè)類之間有關(guān)聯(lián)時(shí):

一個(gè)類"包含“另一個(gè)類:has-a關(guān)系

一個(gè)類“使用”另一個(gè)類

還可以細(xì)分有聚合和組合(UML寶典)或聚集和組成(包括國(guó)內(nèi)某些知名學(xué)術(shù)團(tuán)體都這么說(shuō))。

聚集(aggregation)表示整體與各部分之間的關(guān)系。例如汽車與輪胎,沒有了汽車輪胎依然是

一個(gè)整體。(用空心菱形表示)

組成是一種整體和部分所屬更強(qiáng)的聚集關(guān)系,每個(gè)部分只能屬于一個(gè)整體,沒有整體部分也就

沒有存在的價(jià)值。比如桌子和桌腿,沒有桌子也就沒有桌腿的價(jià)值了。(用實(shí)心菱形表示)

選擇題

1:whichisthemain()methodreturnofaapplication

2:

whatwillhappenwhenyouattempttocompileandrunthefollowingcode

intoutput=10;

booleanbl=false;

if((bltrue)&&((output+=10)20))

(

"weareequal"+output);

)

else

(

"notequal!”+output);

)

choices:

whatwillhappenwhenyouattempttocompileandrunthefollowingcode

intoutput=10;

booleanbl=false;

if((bltrue)&&((output+=10)20))

(

nweareequaln+output);

)

else

(

"notequal!”+output);

)

choices:

error,attemptingtoperformbinarycomparisononlogicaldatatype

andoutputofHweareequal10".

andoutputof"notequal!20".

andoutputof"notequal!10".

3:

whatwillhappenwhenyouattempttocompileandrunthefollowingcode

classbase

(

inti=99;

publicvoidamethod()

(

"()");

)

base()

(

amethod();

)

)

publicclassderivedextendsbase

(

inti=-1;

publicstaticvoidmain(stringargv[])

(

baseb=newderived();

0;

)

publicvoidamethodQ

(

"()");

)

)

choices:

whatwillhappenwhenyouattempttocompileandrunthefollowingcode

classbase

inti=99;

publicvoidamethod()

(

"()");

)

base()

(

amethod();

)

)

publicclassderivedextendsbase

(

inti=-l;

publicstaticvoidmain(stringargv[])

(

baseb=newderived();

0;

)

publicvoidamethodQ

(

"()");

)

)

choices:

-1()

99

timeerror

4:

下述程序代碼中有語(yǔ)法錯(cuò)誤的行是()。

inti,ia[10],ib[10];/*第一行*/

for(i=0;i<=9;i++)/*第2行*/

ia[i]=0;/*第3行*/

ib=ia;/*第4行*/

下述程序代碼中有語(yǔ)法錯(cuò)誤的行是()。

inti,ia[10],ib[10];/*第一行*/

for(i=0;i<=9;i++)/*第2行*/

ia[i]=0;/*第3行*/

ib=ia;/*第4行*/

a.第1行

b.第2行

c.第3行

d.第4行

5:

whatwillbetheresultofexecutingthefollowingcode

classsubclassyextendssuperclassx

4.(

objx=newsubclassyO;

objy=newsubclassyO;

subclassmethody()

8.{

i;

一,

12.}

13.}

choices:

whatwillbetheresultofexecutingthefollowingcode

classsubclassyextendssuperclassx

4.(

objx=newsubclassy();

objy=newsubclassy();

subclassmethodyO

8.{

i;

一,

12.}

13.}

choices:

erroratline5

erroratline9

exceptionatline11

ofthese

6:whicharenotjavakeywords

7:considertheclasshierarchyshownbelow:

classfourwheelerimplementsdrivingutilities

classcarextendsfourwheeler

classtruckextendsfourwheeler

classbusextendsfourwheeler

classcraneextendsfourwheeler

considerthefollowingcodebelow:

du;

fw;

mytruck=newtruck();

=(drivingutilities)mytruck;

=newcrane();

=du;

whichofthestatementsbelowaretrue

choices:

4willnotcompilebecauseaninterfacecannotrefertoanobject.

codewillcompileandrun.

codewillnotcompilewithoutanexplicitcastatline6,becausegoingdownthehierarchy

withoutcastingisnotallowed.

codewillcompileifweputanexplicitcastatline6butwillthrowanexceptionatruntime.

8:exhibit:

1.publicclasstest(

2.privatestaticintj=0;

3.

4.privatestaticbooleanmethodb(intk)(

5.j+=k;

6.returntrue;

6.)

7.

8.publicstaticvoidmethoda(inti){

9.booleanb:

10.b=i<10|methodb(4);

11.b=i<10||methodb(8);

12.)

13.

14.publicstaticvoidmain(stringargs[]}(

15.methoda(0);

16.17.)

18.)

whatistheresult

programprints“0”

programprints"4”

programprints“8”

programprints“12”

9:

publicclassouterclass{

privatedoubledl=;

whichtwoinnerclassdeclarationsare

valid

publicclassouterclass{

privatedoubledl=;

whichtwoinnerclassdeclarationsare

valid

innerone{publicstaticdoublemethoda(){returndl;}}

classinnerone{staticdoublemethoda(){returndl;}}

classinnerone{doublemethodaQ{returndl;}}

classinnerone{protecteddoublemethoda(){returndl;}}

10:

thefollowingcodeisentirecontentsofafilecalled,causespreciselyoneerrorduring

compilation:

classsubclassextendsbaseclass{

)

classbaseclass(){

stringstr;

publicbaseclass(){

publicbaseclass(strings){

str=s;}}

publicclassexample(

publicvoidmethod(){

subclasss=newsubclass("hello");

baseclassb=newbaseclass("world");

)

)

whichlinewouldbecausetheerror

thefollowingcodeisentirecontentsofafilecalled,causespreciselyoneerrorduring

compilation:

classsubclassextendsbaseclass{

)

classbaseclass(){

stringstr;

publicbaseclass(){

publicbaseclass(strings){

str=s;}}

publicclassexample{

publicvoidmethod(){

subclasss=newsubclass("hello");

baseclassb=newbaseclass("world");

)

whichlinewouldbecausetheerror

11:

strings二"examplestring^;whichoperationisnotlegal

strings="examplestring”;whichoperationisnotlegal

i=0;

[3]="x";

short_s=();

t="root"+s;

12:軟件生命周期的瀑布模型把軟件項(xiàng)目分為3個(gè)階段、8個(gè)子階段,以下哪一個(gè)是正常

的開發(fā)順序

a.計(jì)劃階段、開發(fā)階段、運(yùn)行階段

b.設(shè)計(jì)階段、開發(fā)階段、編碼階段

c.設(shè)計(jì)階段、編碼階段、維護(hù)階段

d.計(jì)劃階段、編碼階段、測(cè)試階段

13:whichstatementsaboutjavacodesecurityarenottrue

bytecodeverifierloadsallclassesneededfortheexecutionofaprogram.

codeisperformedbytheruntimeinterpreter.

runtimethebytecodesareloaded,checkedandruninaninterpreter.

classloaderaddssecuritybyseparatingthenamespacesfortheclassesofthelocalfilesystem

fromthoseimportedfromnetworksources.

14:aclassdesignrequiresthatamembervariableshouldbeaccessibleonlybysamepackage,

whichmodiferwordshouldbeused

modifer

15:

givethefollowingmethod:

publicvoidmethod(){

stringa,b;

a=newstring("helloworld,,);

b=newstring("gameover");

a=null;

a=b;

)

intheabsenceofcompileroptimization,whichistheearliestpointtheobjectareferedis

definitelyelibiletobegarbagecollection.

givethefollowingmethod:

publicvoidmethod(){

stringa,b;

a=newstring(uhelloworld");

b=newstring("gameover");

a=null;

a=b;

)

intheabsenceofcompileroptimization,whichistheearliestpointtheobjectareferedis

definitelyelibiletobegarbagecollection.

line5

line6

line7

line9

簡(jiǎn)答題

16:請(qǐng)闡述一下你對(duì)java多線程中“鎖”的概念的理解。

17:列出jsp中包含外部文件的方式,兩者有何區(qū)別。

18:請(qǐng)談?wù)剬?duì)一個(gè)系統(tǒng)設(shè)計(jì)的總體思路。針對(duì)這個(gè)思路,你覺得應(yīng)該具備哪些方面的知

識(shí)

19:struts2中的攔截器,你用過(guò)那些自帶的攔截器,自己寫過(guò)的嗎

20:怎樣在復(fù)雜的各種形式的網(wǎng)頁(yè)中提取mp3下載的結(jié)構(gòu)化數(shù)據(jù)

21:編寫一個(gè)在二叉排序樹中查找大小為第k的元素的算法。

22:java多線程編程。用java寫一個(gè)多線程程序,如寫四個(gè)線程,二個(gè)加1,二個(gè)對(duì)一

個(gè)變量減一,輸出。

23:不允許使用系統(tǒng)時(shí)間,寫出一個(gè)隨機(jī)數(shù)生成函數(shù)。

24:hibemate中的id(主鍵)生成器有那些或者你常用的是那些

25:error和exception有什么區(qū)別

第一,談?wù)刦inal,finally,finalize的區(qū)別。

final如果一個(gè)類被聲明為final,意味著它不能再派生出新的子類,因此一個(gè)類

不能既被聲明為abstract的,又被聲明為final的。將變量或方法聲明為final,可

以保證它們?cè)谑褂弥胁槐桓淖儭1宦暶鳛閒inal的變量必須在聲明時(shí)給定初值,

而在以后的引用中只能讀取,不可修改。被聲明為final的方法也同樣只能使用,

不能重載。

finally用來(lái)清除異常。如果拋出一個(gè)異常,那么相匹配的catch子句就會(huì)執(zhí)行,

然后控制就會(huì)進(jìn)入finally塊(如果有的話)。

finalize。在垃圾收集器將對(duì)象從內(nèi)存中清除出去之前做必要的清理工作。它是在

Object類中定義的,因此所有的類都繼承了它。

第二,AnonymousInnerClass(匿名內(nèi)部類)是否可以繼承其它類,是否可以實(shí)現(xiàn)

接口

匿名的內(nèi)部類是沒有名字的內(nèi)部類。不能繼承其它類,但可作為一個(gè)接口,由另

一個(gè)內(nèi)部類實(shí)現(xiàn)。

第三,StaticNestedClass和InnerClass的不同。

NestedClass(一般是C++的說(shuō)法),InnerClass(一般是JAVA的說(shuō)法)。Java內(nèi)

部類與C++嵌套類最大的不同就在于是否有指向外部的引用上。

注:靜態(tài)內(nèi)部類(InnerClass)意味著:

1創(chuàng)建一個(gè)static內(nèi)部類的對(duì)象

2不能從一個(gè)static內(nèi)部類的一個(gè)對(duì)象訪問(wèn)一個(gè)外部類對(duì)象

第四,&和&&的區(qū)別。

&是位運(yùn)算符。&&是布爾邏輯運(yùn)算符。

第五,HashMap和Hashtable的區(qū)別。

都屬于Map接口的類,實(shí)現(xiàn)了將惟一鍵映射到特定的值上。

HashMap類允許一個(gè)null鍵和多個(gè)null值。

Hashtable類不允許null鍵和null值。它也比HashMap慢,因?yàn)樗峭降摹?/p>

第六,Collection和Collections的區(qū)別。

Collections是個(gè)下的類,它包含有各種有關(guān)集合操作的靜態(tài)方法。

Collection是個(gè)下的接口,它是各種集合結(jié)構(gòu)的父接口。

第七,什么時(shí)候用asserto

斷言是一個(gè)包含布爾表達(dá)式的語(yǔ)句,在執(zhí)行這個(gè)語(yǔ)句時(shí)假定該表達(dá)式為true。如

果表達(dá)式計(jì)算為false,那么系統(tǒng)會(huì)報(bào)告一個(gè)AssertionErroro

示例:

assert(a>0);c()

第九,Strings=newString("xyz");創(chuàng)建了幾個(gè)StringObject

兩個(gè)對(duì)象,一個(gè)是String類型的“xyx”,一個(gè)是指向“xyx”的引用對(duì)象s。

第十,等於多少等於多少

返回(long)12,返回(long)-11;

第二4,abstract的method是否可同時(shí)是static,是否可同時(shí)是native,是否可

同時(shí)是synchronized

都不能

第二十二,接口是否可繼承接口抽象類是否可實(shí)現(xiàn)(implements)接口抽象類是否

可繼承實(shí)體類(concreteclass)

接口可以繼承接口。抽象類可以實(shí)現(xiàn)(implements)接口,抽象類是否可繼承實(shí)體

類,但前提是實(shí)體類必須有明確的構(gòu)造函數(shù)。

第二十三,啟動(dòng)一個(gè)線程是用run()還是start()

啟動(dòng)一個(gè)線程是調(diào)用start。方法,使線程所代表的虛擬處理機(jī)處于可運(yùn)行狀態(tài),

這意味著它可以由JVM調(diào)度并執(zhí)行。

這并不意味著線程就會(huì)立即運(yùn)行。run()方法可以產(chǎn)生必須退出的標(biāo)志來(lái)停止一個(gè)

線程。

個(gè)人猜測(cè),可能是以下結(jié)構(gòu):

run(){

0;

第二十四,構(gòu)造器Constructor是否可被override

構(gòu)造器Constructor不能被繼承,因此不能重寫Overriding,但可以被重載

Overloadingo

第二十五,是否可以繼承String類

String類是final類故不可以繼承。

第二十六,當(dāng)一個(gè)線程進(jìn)入一個(gè)對(duì)象的一個(gè)synchronized方法后,其它線程是否

可進(jìn)入此對(duì)象的其它方法

不能,一個(gè)對(duì)象的一個(gè)synchronized方法只能由一個(gè)線程訪問(wèn)。

第二十七,try{}里有一個(gè)return語(yǔ)句,那么緊跟在這個(gè)try后的finally{}里的code

會(huì)不會(huì)被執(zhí)行,什么時(shí)候被執(zhí)行,在return前還是后

會(huì)執(zhí)行,在return前執(zhí)行。

第二十八,編程題:用最有效率的方法算出2乘以8等於幾

有C背景的程序員特別喜歡問(wèn)這種問(wèn)題。

第二十九,兩個(gè)對(duì)象值相同(y)==true),但卻可有不同的hashcode,這句話對(duì)不

對(duì)

不對(duì),有相同的hashcode。

第三十,當(dāng)一個(gè)對(duì)象被當(dāng)作參數(shù)傳遞到一個(gè)方法后,此方法可改變這個(gè)對(duì)象的屬

性,并可返回變化后的結(jié)果,那么這里到底是值傳遞還是引用傳遞

是值傳遞。Java編程語(yǔ)言只有值傳遞。當(dāng)一個(gè)對(duì)象實(shí)例作為一個(gè)參數(shù)被傳遞到方

法中時(shí),參數(shù)的值就是對(duì)該對(duì)象的引用。對(duì)象的內(nèi)容可以在被調(diào)用的方法中改變,

但對(duì)象的引用是永遠(yuǎn)不會(huì)改變的。

第三4^一swtich是否能作用在byte上,是否能作用在long上,是否能作用在

String上

switch(exprl)中,exprl是一個(gè)整數(shù)表達(dá)式。因此傳遞給switch和case語(yǔ)句的

參數(shù)應(yīng)該是int、short、char或者byte。long,string都不能作用于swtich。

第三十二,編程題:寫一個(gè)Singleton出來(lái)。

Singleton模式主要作用是保證在Java應(yīng)用程序中,一個(gè)類Class只有一個(gè)實(shí)例存

在。

一般Singleton模式通常有幾種種形式:

第一種形式:定義一個(gè)類,它的構(gòu)造函數(shù)為private的,它有一個(gè)static的private

的該類變量,在類初始化時(shí)實(shí)例話,通過(guò)一個(gè)public的getlnstance方法獲取對(duì)它

的引用,繼而調(diào)用其中的方法。

publicclassSingleton{

privateSingleton(){}

Java不支持缺省函數(shù)參數(shù),而c十十支持

在C中,代碼組織在函數(shù)中,函數(shù)可以訪問(wèn)程序的全局變量。C十十增加了類,提供了類算

法,該算法是與類相連的函數(shù),c十十類方法與Java類方法十分相似,然而,由于c十十仍

然支持c,所以不能阻止c十十開發(fā)人員使用函數(shù),結(jié)果函數(shù)和方法混合使用使得程序比較

混亂。

Java沒有函數(shù),作為一個(gè)比c十十更純的面向?qū)ο蟮恼Z(yǔ)言,Java強(qiáng)迫開發(fā)人員把所有例行程

序包括在類中,事實(shí)上,用方法實(shí)現(xiàn)例行程序可激勵(lì)開發(fā)人員更好地組織編碼。

8字符串

c和c十十不支持字符串變量,在c和c十十程序中使用Null終止符代表字符串的結(jié)束,在

Java中字符串是用類對(duì)象(strinR和stringBuffer)來(lái)實(shí)現(xiàn)的,這些類對(duì)象是Java語(yǔ)言的核心,

用類對(duì)象實(shí)現(xiàn)字符串有以下幾個(gè)優(yōu)點(diǎn):

(1)在整個(gè)系統(tǒng)中建立字符串和訪問(wèn)字符串元素的方法是一致的;

(2)13陽(yáng)字符串類是作為Java語(yǔ)言的一部分定義的,而不是作為外加的延伸部分;

(3)Java字符串執(zhí)行運(yùn)行時(shí)檢空,可幫助排除一些運(yùn)行時(shí)發(fā)生的錯(cuò)誤;

(4)可對(duì)字符串用“十”進(jìn)行連接操作。

9"goto語(yǔ)句

“可怕”的goto語(yǔ)句是C和C++的“遺物”,它是該語(yǔ)言技術(shù)上的合法部分,引用goto語(yǔ)句引起

了程序結(jié)構(gòu)的混亂,不易理解,goto語(yǔ)句子要用于無(wú)條件轉(zhuǎn)移子程序和多結(jié)構(gòu)分支技術(shù)。鑒

于以廣理由,Java不提供goto語(yǔ)句,它雖然指定goto作為關(guān)鍵字,但不支持它的使用,使

程序簡(jiǎn)潔易讀。

10.類型轉(zhuǎn)換

在C和C十十中有時(shí)出現(xiàn)數(shù)據(jù)類型的隱含轉(zhuǎn)換,這就涉及了自動(dòng)強(qiáng)制類型轉(zhuǎn)換問(wèn)題。例如,

在C十十中可將一浮點(diǎn)值賦予整型變量,并去掉其尾數(shù)。Java不支持c十十中的自動(dòng)強(qiáng)制類

型轉(zhuǎn)換,如果需要,必須由程序顯式進(jìn)行強(qiáng)制類型轉(zhuǎn)換。

1L異常

JAVA中的異常機(jī)制用于捕獲例外事件,增強(qiáng)系統(tǒng)容錯(cuò)能力

try{//可能產(chǎn)生例外的代碼

}catch(exceptionTypename){

StringBuilder是非線程安全的,StringBuffer是線程安全的。

1.一下a,b兩段代碼那個(gè)執(zhí)行速度更快

a.for(inti=100000;i>0;i-){}

b.for(inti=1;i<100001;i++){}

答案:a

2.一下兩段代碼那個(gè)執(zhí)行速度更快

a.(a,b);

b.(a>b)a:b

答案:b

3.Array操作是不是比Vector更快是的,Array更快

4.如果Pointp的如下方法被調(diào)用之前是(700,800),那么當(dāng)如下a,b方法執(zhí)行后,Pointp的值

分別為多少

a.staticvoidchangePoint(Pointp){

=100;=200;

}

b.staticvoidchangePoint(Pointp){

p=newPoint(100,200);

}

答案:a.(100,200)b.(700,800)基本類型在方法參數(shù)中是按值傳遞的,而對(duì)象是按引用的值

傳遞的,在一個(gè)方法內(nèi)如果對(duì)象的值改變了,會(huì)有影響。但是如果我們改變引用本身,它的

原始引用/對(duì)象不會(huì)改變,只有引用的拷貝會(huì)改變。

5.和空文件是合法的java源文件,這個(gè)說(shuō)法正確嗎答案:是的

6.下面哪種說(shuō)法正確

1.Char\u0061ra=,a9;

2.Char\u0062=,b,;

3.Charc=,\u0063,;

1.1b.2d.ALLe.NONE

答案:d

1.下面哪種基本類型是無(wú)符號(hào)的

1.int

2.long

3.char

4.double

5.float

答案:c.char(所有的數(shù)字類型都是帶符號(hào)的,char是唯一的無(wú)符號(hào)的整形)

2.Java同時(shí)支持多維數(shù)組和嵌套數(shù)組對(duì)嗎

答案:不對(duì),Java只支持嵌套數(shù)組,不支持多維數(shù)組

3.publicmain(intnumber){}是一個(gè)合法的方法嗎

答案:正確的

4.publicstaticfinalmain(String[]args){}是一個(gè)合法的方法嗎

是的

5.一個(gè)沒有方法的類可以在JVM執(zhí)行嗎如果它的祖先類有main方法

是的

6.GC是一個(gè)高優(yōu)先級(jí)線程嗎

不對(duì),GC是一個(gè)低優(yōu)先級(jí)線程

7.循環(huán)引用可以避免一個(gè)對(duì)象被垃圾回收嗎

不會(huì)

8.如果在finalize方法里面發(fā)生了exception,這個(gè)對(duì)象會(huì)被垃圾回收嗎

finalize方法里面的Exception不能避免垃圾回收

DispatchAction是Struts包含的另一個(gè)能大量節(jié)省開發(fā)時(shí)間的Action類。與其它Action類僅

提供單個(gè)execute。方法實(shí)現(xiàn)單個(gè)業(yè)務(wù)不同,DispatchAction允許你在單個(gè)Action類中編寫多

個(gè)與業(yè)務(wù)相關(guān)的方法。這樣可以減少Action類的數(shù)量,并且把相關(guān)的業(yè)務(wù)方法集合在一起

使得維護(hù)起來(lái)更容易。

要使用DispatchAction的功能,需要自己創(chuàng)建一個(gè)類,通過(guò)繼承抽象的DispatchAction得到。

對(duì)每個(gè)要提供的業(yè)務(wù)方法必須有特定的方法signature。例如,我們想要提供一個(gè)方法來(lái)實(shí)現(xiàn)

對(duì)購(gòu)物車添加商品清單,創(chuàng)建了一個(gè)類ShoppingCartDispatchAction提供以下的方法:

publicActionForwardaddItem(ActionMappingmapping,ActionFormform,HttpServletRequest

request,HttpServletResponseresponse)(

throwsException;

)

那么,這個(gè)類很可能還需要一個(gè)deleteltem。方法從客戶的購(gòu)物車中刪除商品清單,還有

clearCart()方法清除購(gòu)物車等等。這時(shí)我們就可以把這些方法集合在單個(gè)Action類,不用為

每個(gè)方法都提供一個(gè)Action類。

在調(diào)用ShoppingCartDispatchAction里的某個(gè)方法時(shí),只需在URL中提供方法名作為參數(shù)值。

就是說(shuō),調(diào)用addltem。方法的URL看起來(lái)可能類似于:

這里使用的"method”只是一個(gè)例子。參數(shù)的名稱可以在Struts配置文件中自行設(shè)定。

如何在Web項(xiàng)目中保護(hù)JSP源代碼不被未經(jīng)授權(quán)的訪問(wèn)和窺視

JSP

通常JSP開發(fā)人員會(huì)把他們的頁(yè)面文件存放在Web應(yīng)用相應(yīng)的子目錄下。一個(gè)典型的商店

應(yīng)用程序的目錄結(jié)構(gòu)如圖2所示。跟catalog(商品目錄)相關(guān)的JSP被保存在catalog子目

錄下。跟customer相關(guān)的JSP,跟訂單相關(guān)的JSP等都按照這種方法存放。

基于不同的功能JSP被放置在不同的目錄下

這種方法的問(wèn)題是這些頁(yè)面文件容易被偷看到源代碼,或被直接調(diào)用。某些場(chǎng)合下這可能不

是個(gè)大問(wèn)題,可是在特定情形中卻可能構(gòu)成安全隱患。用戶可以繞過(guò)Struts的controller直

接調(diào)用JSP同樣也是個(gè)問(wèn)題。

為了減少風(fēng)險(xiǎn),可以把這些頁(yè)面文件移到WEB-INF目錄下?;赟ervlet的聲明,WEB-INF

不作為Web應(yīng)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論