一共23種設(shè)計(jì)模式!
龍泉ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書(shū)未來(lái)市場(chǎng)廣闊!成為成都創(chuàng)新互聯(lián)的ssl證書(shū)銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18982081108(備注:SSL證書(shū)合作)期待與您的合作!
引用《軟件秘笈-設(shè)計(jì)模式那點(diǎn)事》書(shū)籍:
按照目的來(lái)分,設(shè)計(jì)模式可以分為創(chuàng)建型模式、結(jié)構(gòu)型模式和行為型模式。
創(chuàng)建型模式用來(lái)處理對(duì)象的創(chuàng)建過(guò)程;結(jié)構(gòu)型模式用來(lái)處理類或者對(duì)象的組合;行為型模式用來(lái)對(duì)類或?qū)ο笤鯓咏换ズ驮鯓臃峙渎氊?zé)進(jìn)行描述。
創(chuàng)建型模式用來(lái)處理對(duì)象的創(chuàng)建過(guò)程,主要包含以下5種設(shè)計(jì)模式:
? 工廠方法模式(Factory Method Pattern)
? 抽象工廠模式(Abstract Factory Pattern)
? 建造者模式(Builder Pattern)
? 原型模式(Prototype Pattern)
? 單例模式(Singleton Pattern)
結(jié)構(gòu)型模式用來(lái)處理類或者對(duì)象的組合,主要包含以下7種設(shè)計(jì)模式:
? 適配器模式(Adapter Pattern)
? 橋接模式(Bridge Pattern)
? 組合模式(Composite Pattern)
? 裝飾者模式(Decorator Pattern)
? 外觀模式(Facade Pattern)
? 享元模式(Flyweight Pattern)
? 代理模式(Proxy Pattern)
行為型模式用來(lái)對(duì)類或?qū)ο笤鯓咏换ズ驮鯓臃峙渎氊?zé)進(jìn)行描述,主要包含以下11種設(shè)計(jì)模式:
? 責(zé)任鏈模式(Chain of Responsibility Pattern)
? 命令模式(Command Pattern)
? 解釋器模式(Interpreter Pattern)
? 迭代器模式(Iterator Pattern)
? 中介者模式(Mediator Pattern)
? 備忘錄模式(Memento Pattern)
? 觀察者模式(Observer Pattern)
? 狀態(tài)模式(State Pattern)
? 策略模式(Strategy Pattern)
? 模板方法模式(Template Method Pattern)
? 訪問(wèn)者模式(Visitor Pattern)
7 描述一下Struts的工作方法
答: 1. 包含一個(gè)controller servlet,能將用戶的請(qǐng)求發(fā)送到相應(yīng)的Action對(duì)象。
2. JSP自由tag庫(kù),并且在controller servlet中提供關(guān)聯(lián)支持,幫助開(kāi)發(fā)員創(chuàng)建交互式表單應(yīng)用。
3. 提供了一系列實(shí)用對(duì)象:XML處理、通過(guò)Java reflection APIs自動(dòng)處理JavaBeans屬性、國(guó)際化的提示和消息。
Struts項(xiàng)目的目標(biāo)是為創(chuàng)建Java web應(yīng)用提供一個(gè)開(kāi)放源代碼的framework。Struts framework的內(nèi)核是基于例如Java Servlets, JavaBeans, ResourceBundles, 和 XML,以及各種 Jakarta Commons包的標(biāo)準(zhǔn)技術(shù)的靈活的控制層。
8 jsp有哪些內(nèi)置對(duì)象?作用分別是什么?
答: JSP共有以下9種基本內(nèi)置組件(可與ASP的6種內(nèi)部組件相對(duì)應(yīng)):
request 用戶端請(qǐng)求,此請(qǐng)求會(huì)包含來(lái)自GET/POST請(qǐng)求的參數(shù)
response 網(wǎng)頁(yè)傳回用戶端的回應(yīng)
pageContext 網(wǎng)頁(yè)的屬性是在這里管理
session 與請(qǐng)求有關(guān)的會(huì)話期
application servlet 正在執(zhí)行的內(nèi)容
out 用來(lái)傳送回應(yīng)的輸出
config servlet的構(gòu)架部件
page JSP網(wǎng)頁(yè)本身
exception 針對(duì)錯(cuò)誤網(wǎng)頁(yè),未捕捉的例外
9 兩種跳轉(zhuǎn)方式分別是什么?有什么區(qū)別?
答: 有兩種,分別為:
jsp:include page="included.jsp" flush="true"
jsp:forward page= "nextpage.jsp"/
I0前者頁(yè)面不會(huì)轉(zhuǎn)向include所指的頁(yè)面,只是顯示該頁(yè)的結(jié)果,主頁(yè)面還是原來(lái)的頁(yè)面。執(zhí)行完后還會(huì)回來(lái),相當(dāng)于函數(shù)調(diào)用。并且可 以帶參數(shù).后者完全轉(zhuǎn)向新頁(yè)面,不會(huì)再回來(lái)。相當(dāng)于go to 語(yǔ)句。
10 描述一下Jsp中Taglib的用法
答: 一、第一種方法:僅聲明TLD位置
在jsp文件頭部,聲明:
%@ taglib uri=”/WEB-INF/tlds/orataglib_1_0.tld” prefix=”ora”%
二、第二種方法:定義庫(kù)名稱
在jsp文件頭部,聲明:
%@ taglib uri=”/orataglib” prefix=”ora”%
在WEB.XML添加如下聲明:
taglib
taglib-uri/orataglib/taglib-uri
taglib-location/WEB-INF/tlds/orataglib_1_0.tld/taglib-location
/taglib
在tld里加上:
shortnameora/shortname
uri/orataglib/uri
11 Javascript中如何校對(duì)數(shù)字型?
答:
12 EJB2.0 中包括那些內(nèi)容?作用分別是什么?
答: 規(guī)范內(nèi)容包括Bean提供者,應(yīng)用程序裝配者,EJB容器,EJB配置工具,EJB服務(wù)提供者,系統(tǒng)管理員。這里面,EJB容器是EJB之所以 能夠運(yùn)行的核心。EJB容器管理著EJB的創(chuàng)建,撤消,激活,去活,與數(shù)據(jù)庫(kù)的連接等等重要的核心工作。 JSP,Servlet,EJB,JNDI,JDBC,JMS.....
13 一個(gè)SessionBean包含哪幾個(gè)組件?各個(gè)組件作用是什么?
答: Session Bean 包含: Stateful Session Bean 與 Stateless Session Bean
Stateful Session Bean 可以記錄 呼叫者的狀態(tài),因此通常來(lái)說(shuō),一個(gè)使用者會(huì)有一個(gè)相對(duì)應(yīng)的 Stateful Session Bean 的實(shí)體。 Stateless Session Bean 不負(fù)責(zé)記錄使用者狀態(tài),也就是說(shuō)當(dāng)使用者呼叫 Stateless Session Bean 的時(shí)候, EJB Container 并不會(huì) 找尋特定的 Stateless Session Bean 的實(shí)體來(lái)執(zhí)行這個(gè) method 。換言之,很可能數(shù)個(gè)使用者在執(zhí)行某個(gè) Stateless Session Bean 的methods 時(shí),會(huì)是同一個(gè) Bean 的 Instance 在執(zhí)行。,
14 列舉一下你所知道的設(shè)計(jì)模式(包括EJB,J2EE的設(shè)計(jì)模式),以及它們應(yīng)用的場(chǎng)合?
答: Factory(工廠模式), Factory Method(工廠方法模式),
Prototype(原始模型模式),Singleton(單例模式),
Adapter(適配器模式), Decorator(裝飾模式),
Flyweight(享元模式), Proxy(代理模式),
Command(命令模式), Interpreter(解釋器模式),
Visitor(訪問(wèn)者模式),Iterator(迭代子模式),
Observer(觀察者模式), State(狀態(tài)模式),
主要用到了MVC的設(shè)計(jì)模式。用來(lái)開(kāi)發(fā)JSP/Servlet或者J2EE的相關(guān)應(yīng)用。
15 解析XML主要方法有哪些?各有什么區(qū)別?
答: 有DOM,SAX,STAX等
DOM:處理大型文件時(shí)其性能下降的非常厲害。這個(gè)問(wèn)題是由DOM的樹(shù)結(jié)構(gòu)所造成的,這種結(jié)構(gòu)占用的內(nèi)存較多,而且DOM必須在解析文件 之前把整個(gè)文檔裝入內(nèi)存,適合對(duì)XML的隨機(jī)訪問(wèn)SAX:不現(xiàn)于DOM,SAX是事件驅(qū)動(dòng)型的XML解析方式。它順序讀取XML文件,不需要一次全部 裝載整個(gè)文件。當(dāng)遇到像文件開(kāi)頭,文檔結(jié)束,或者標(biāo)簽開(kāi)頭與標(biāo)簽結(jié)束時(shí),它會(huì)觸發(fā)一個(gè)事件,用戶通過(guò)在其回調(diào)事件中寫(xiě)入處理代 碼來(lái)處理XML文件,適合對(duì)XML的順序訪問(wèn)
STAX:Streaming API for XML (StAX)
16 Hashtable的原理,并說(shuō)出HashMap與Hashtable的區(qū)別 Vector 和ArrayList有什么區(qū)別?
答:
HashTable的原理:通過(guò)節(jié)點(diǎn)的關(guān)鍵碼確定節(jié)點(diǎn)的存儲(chǔ)位置,即給定節(jié)點(diǎn)的關(guān)鍵碼k,通過(guò)一定的函數(shù)關(guān)系H(散列函數(shù)),得到函數(shù)值H(k),將 此值解釋為該節(jié)點(diǎn)的存儲(chǔ)地址.
就ArrayList與Vector主要從二方面來(lái)說(shuō).
一.同步性:Vector是線程安全的,也就是說(shuō)是同步的,而ArrayList是線程序不安全的,不是同步的
二.數(shù)據(jù)增長(zhǎng):當(dāng)需要增長(zhǎng)時(shí),Vector 默認(rèn)增長(zhǎng)為原來(lái)一培,而ArrayList卻是原來(lái)的一半
就HashMap與HashTable主要從三方面來(lái)說(shuō)。
一.歷史原因:Hashtable是基于陳舊的Dictionary類的,HashMap是Java 1.2引進(jìn)的Map接口的一個(gè)實(shí)現(xiàn)
二.同步性:Hashtable是線程安全的,也就是說(shuō)是同步的,而HashMap是線程序不安全的,不是同步的
三.值:只有HashMap可以讓你將空值作為一個(gè)表的條目的key或value
17 JAVA SERVLET API中forward() 與redirect()的區(qū)別?
答: 前者僅是容器中控制權(quán)的轉(zhuǎn)向,在客戶端瀏覽器地址欄中不會(huì)顯示出轉(zhuǎn)向后的地址;后者則是完全的跳轉(zhuǎn),瀏覽器將會(huì)得到跳轉(zhuǎn)的地 址,并重新發(fā)送請(qǐng)求鏈接。這樣,從瀏覽器的地址欄中可以看到跳轉(zhuǎn)后的鏈接地址。所以,前者更加高效,在前者可以滿足需要時(shí),盡 量使用forward()方法,并且,這樣也有助于隱藏實(shí)際的鏈接。在有些情況下,比如,需要跳轉(zhuǎn)到一個(gè)其它服務(wù)器上的資源,則必須使用 sendRedirect()方法。
18 什么是Web容器?
答: 實(shí)現(xiàn)J2EE規(guī)范中web協(xié)議的應(yīng)用.該協(xié)議定義了web程序的運(yùn)行時(shí)環(huán)境,包括:并發(fā)性,安全性,生命周期管理等等.
19 EJB是基于哪些技術(shù)實(shí)現(xiàn)的?并說(shuō) 出SessionBean和EntityBean的區(qū)別,StatefulBean和StatelessBean的區(qū)別.
答: EJB包括Session Bean、Entity Bean、Message Driven Bean,基于JNDI、RMI、JAT等技術(shù)實(shí)現(xiàn).
SessionBean在J2EE應(yīng)用程序中被用來(lái)完成一些服務(wù)器端的業(yè)務(wù)操作,例如訪問(wèn)數(shù)據(jù)庫(kù)、調(diào)用其他EJB組件.EntityBean被用來(lái)代 表應(yīng)用系統(tǒng)中用到的數(shù)據(jù).對(duì)于客戶機(jī),SessionBean是一種非持久性對(duì)象,它實(shí)現(xiàn)某些在服務(wù)器上運(yùn)行的業(yè)務(wù)邏輯;EntityBean 是一種持久性對(duì)象,它代表一個(gè)存儲(chǔ)在持久性存儲(chǔ)器中的實(shí)體的對(duì)象視圖,或是一個(gè)由現(xiàn)有企業(yè)應(yīng)用程序?qū)崿F(xiàn)的實(shí)體.
Session Bean 還可以再細(xì)分為 Stateful Session Bean 與 Stateless Session Bean .這兩種的 Session Bean都可以將系統(tǒng) 邏輯放在method之中執(zhí)行,不同的是 Stateful Session Bean 可以記錄呼叫者的狀態(tài),因此通常來(lái)說(shuō),一個(gè)使用者會(huì)有一個(gè)相 對(duì)應(yīng)的 Stateful Session Bean 的實(shí)體.Stateless Session Bean 雖然也是邏輯組件,但是他卻不負(fù)責(zé)記錄使用者狀態(tài),也就 是說(shuō)當(dāng)使用者呼叫 Stateless Session Bean 的時(shí)候,EJB Container 并不會(huì)找尋特定的 Stateless Session Bean 的實(shí)體來(lái) 執(zhí)行這個(gè) method.換言之,很可能數(shù)個(gè)使用者在執(zhí)行某個(gè) Stateless Session Bean 的 methods 時(shí),會(huì)是同一個(gè) Bean 的 Instance 在執(zhí)行.從內(nèi)存方面來(lái)看,Stateful Session Bean 與 Stateless Session Bean 比較, Stateful Session Bean 會(huì) 消耗J2EE Server 較多的內(nèi)存,然而 Stateful Session Bean 的優(yōu)勢(shì)卻在于他可以維持使用者的狀態(tài).
20 什么是Web Service?
答: Web Service就是為了使原來(lái)各孤立的站點(diǎn)之間的信息能夠相互通信、共享而提出的一種接口。
Web Service所使用的是Internet上統(tǒng)一、開(kāi)放的標(biāo)準(zhǔn),如HTTP、XML、SOAP(簡(jiǎn)單對(duì)象訪問(wèn)協(xié)議)、WSDL等,所以Web Service 可以在任何支持這些標(biāo)準(zhǔn)的環(huán)境(Windows,Linux)中使用。
注:SOAP協(xié)議(Simple Object Access Protocal,簡(jiǎn)單對(duì)象訪問(wèn)協(xié)議),它是一個(gè)用于分散和分布式環(huán)境下網(wǎng)絡(luò)信息交換的基于 XML的通訊協(xié)議。在此協(xié)議下,軟件組件或應(yīng)用程序能夠通過(guò)標(biāo)準(zhǔn)的HTTP協(xié)議進(jìn)行通訊。它的設(shè)計(jì)目標(biāo)就是簡(jiǎn)單性和擴(kuò)展性,這 有助于大量異構(gòu)程序和平臺(tái)之間的互操作性,從而使存在的應(yīng)用程序能夠被廣泛的用戶訪問(wèn)。
優(yōu)勢(shì):
(1).跨平臺(tái)。
(2).SOAP協(xié)議是基于XML和HTTP這些業(yè)界的標(biāo)準(zhǔn)的,得到了所有的重要公司的支持。
(3).由于使用了SOAP,數(shù)據(jù)是以ASCII文本的方式而非二進(jìn)制傳輸,調(diào)試很方便;并且由于這樣,它的數(shù)據(jù)容易通過(guò)防火墻,不需要防火 墻為了程序而單獨(dú)開(kāi)一個(gè)“漏洞”。
(4).此外,WebService實(shí)現(xiàn)的技術(shù)難度要比CORBA和DCOM小得多。
(5).要實(shí)現(xiàn)B2B集成,EDI比較完善與比較復(fù)雜;而用WebService則可以低成本的實(shí)現(xiàn),小公司也可以用上。
(6).在C/S的程序中,WebService可以實(shí)現(xiàn)網(wǎng)頁(yè)無(wú)整體刷新的與服務(wù)器打交道并取數(shù)。
缺點(diǎn):
(1).WebService使用了XML對(duì)數(shù)據(jù)封裝,會(huì)造成大量的數(shù)據(jù)要在網(wǎng)絡(luò)中傳輸。
(2).WebService規(guī)范沒(méi)有規(guī)定任何與實(shí)現(xiàn)相關(guān)的細(xì)節(jié),包括對(duì)象模型、編程語(yǔ)言,這一點(diǎn),它不如CORBA。
21 多線程有幾種實(shí)現(xiàn)方法,都是什么?同步有幾種實(shí)現(xiàn)方法,都是什么?
答: 多線程有兩種實(shí)現(xiàn)方法,分別是繼承Thread類與實(shí)現(xiàn)Runnable接口
同步的實(shí)現(xiàn)方面有兩種,分別是synchronized,wait與notify
22 Java編程,打印昨天的當(dāng)前時(shí)刻(機(jī)試)
23 struts的工作流程?
答: 在Struts中,用戶的請(qǐng)求一般以*.do作為請(qǐng)求服務(wù)名,所有的*.do請(qǐng)求均被指向ActionSevlet,ActionSevlet根據(jù)Struts-config.xml中 的配置信息,將用戶請(qǐng)求封裝成一個(gè)指定名稱的FormBean,并將此FormBean傳至指定名稱的ActionBean,由ActionBean完成相應(yīng)的業(yè)務(wù) 操作,如文件操作,數(shù)據(jù)庫(kù)操作等。每一個(gè)*.do均有對(duì)應(yīng)的FormBean名稱和ActionBean名稱,這些在Struts-config.xml中配置。
24 MVC的工作原理?
答: 控制:有一個(gè)XML文件Struts-config.xml,與之相關(guān)聯(lián)的是Controller,在Struts中,承擔(dān)MVC中Controller角色的是一個(gè)Servlet,叫 ActionServlet。ActionServlet是一個(gè)通用的控制組件。這個(gè)控制組件提供了處理所有發(fā)送到Struts的HTTP請(qǐng)求的入口點(diǎn)。它截取和分 發(fā)這些請(qǐng)求到相應(yīng)的動(dòng)作類(這些動(dòng)作類都是Action類的子類)。另外控制組件也負(fù)責(zé)用相應(yīng)的請(qǐng)求參數(shù)填充 Action From(通常稱之 為FromBean),并傳給動(dòng)作類(通常稱之為ActionBean)。動(dòng)作類實(shí)現(xiàn)核心商業(yè)邏輯,它可以訪問(wèn)java bean 或調(diào)用EJB。最后動(dòng)作類把 控制權(quán)傳給后續(xù)的JSP 文件,后者生成視圖。所有這些控制邏輯利用Struts-config.xml文件來(lái)配置。
視圖:主要由JSP生成頁(yè)面完成視圖,Struts提供豐富的JSP 標(biāo)簽庫(kù): Html,Bean,Logic,Template等,這有利于分開(kāi)表現(xiàn)邏輯和程序 邏輯。
模型:模型以一個(gè)或多個(gè)java bean的形式存在。這些bean分為三類:Action Form、Action、JavaBean or EJB。Action Form通常稱之 為FormBean,封裝了來(lái)自于Client的用戶請(qǐng)求信息,如表單信息。Action通常稱之為ActionBean,獲取從ActionSevlet傳來(lái)的FormBean ,取出FormBean中的相關(guān)信息,并做出相關(guān)的處理,一般是調(diào)用Java Bean或EJB等。
流程:在Struts中,用戶的請(qǐng)求一般以*.do作為請(qǐng)求服務(wù)名,所有的*.do請(qǐng)求均被指向ActionSevlet,ActionSevlet根據(jù)Struts- config.xml中的配置信息,將用戶請(qǐng)求封裝成一個(gè)指定名稱的FormBean,并將此FormBean傳至指定名稱的ActionBean,由ActionBean完 成相應(yīng)的業(yè)務(wù)操作,如文件操作,數(shù)據(jù)庫(kù)操作等。每一個(gè)*.do均有對(duì)應(yīng)的FormBean名稱和ActionBean名稱,這些在Struts-config.xml中 配置。 核心:Struts的核心是ActionSevlet,ActionSevlet的核心是Struts-config.xml。
FormBean的產(chǎn)生是為了提供數(shù)據(jù)給ActionBean,在ActionBean中可以取得FormBean中封裝的數(shù)據(jù),經(jīng)相應(yīng)的邏輯處理后,調(diào)用業(yè)務(wù)方法 完成相應(yīng)業(yè)務(wù)要求。
Servlet的演變:在常規(guī)的 JSP,Servlet,JavaBean三層結(jié)構(gòu)中,JSP實(shí)現(xiàn)View的功能,Servlet實(shí)現(xiàn)Controller的功能,JavaBean實(shí)現(xiàn) Model的實(shí)現(xiàn)。
在Struts中,將常規(guī)情況下的Servlet拆分與ActionServlet、FormBean、ActionBean三個(gè)部分。ActionServlet配合Struts-config.xml ,專職完成頁(yè)面導(dǎo)航,而不再負(fù)責(zé)具
25 寫(xiě)一段實(shí)現(xiàn)楊輝三角的代碼?
答:
26 java里的方法重載和方法覆蓋有什么區(qū)別?
答: 1、方法的覆蓋是子類和父類之間的關(guān)系,是垂直關(guān)系;方法的重載是同一個(gè)類中方法之間的關(guān)系,是水平關(guān)系。
2、覆蓋只能由一個(gè)方法,或只能由一對(duì)方法產(chǎn)生關(guān)系;方法的重載是多個(gè)方法之間的關(guān)系。
3、覆蓋要求參數(shù)列表相同;重載要求參數(shù)列表不同。
4、覆蓋關(guān)系中,調(diào)用那個(gè)方法體,是根據(jù)對(duì)象的類型(對(duì)象對(duì)應(yīng)存儲(chǔ)空間類型)來(lái)決定;重載關(guān)系,是根據(jù)調(diào)用時(shí)的實(shí)參表與形參表來(lái) 選擇方法體的。
27 jsp有哪些動(dòng)作?作用分別是什么?
答: JSP共有以下6種基本動(dòng)作
jsp:include:在頁(yè)面被請(qǐng)求的時(shí)候引入一個(gè)文件。
jsp:useBean:尋找或者實(shí)例化一個(gè)JavaBean。
jsp:setProperty:設(shè)置JavaBean的屬性。
jsp:getProperty:輸出某個(gè)JavaBean的屬性。
jsp:forward:把請(qǐng)求轉(zhuǎn)到一個(gè)新的頁(yè)面。
jsp:plugin:根據(jù)瀏覽器類型為Java插件生成OBJECT或EMBED標(biāo)記
28 一個(gè)int型的數(shù)組與一個(gè)int值,查詢int值在數(shù)組中的index值,還要寫(xiě)兩個(gè)測(cè)試用例
答:
29 線程的工作機(jī)制?wait與sleep的區(qū)別
答: sleep是線程類(Thread)的方法,導(dǎo)致此線程暫停執(zhí)行指定時(shí)間,給執(zhí)行機(jī)會(huì)給其他線程,但是監(jiān)控狀態(tài)依然保持,到時(shí)后會(huì)自動(dòng)恢復(fù) 。調(diào)用sleep不會(huì)釋放對(duì)象鎖。
wait是Object類的方法,對(duì)此對(duì)象調(diào)用wait方法導(dǎo)致本線程放棄對(duì)象鎖,進(jìn)入等待此對(duì)象的等待鎖定池,只有針對(duì)此對(duì)象發(fā)出notify方 法(或notifyAll)后本線程才進(jìn)入對(duì)象鎖定池準(zhǔn)備獲得對(duì)象鎖進(jìn)入運(yùn)行狀態(tài)。
30 Servlet與GenericServlet,HttpServlet的區(qū)別?在程序中一般用哪個(gè)?并實(shí)現(xiàn)什么方法?
答:
31 Hibernate的工作原理?
答: Hibernate是一個(gè)JDO工具。它的工作原理是通過(guò)文件把值對(duì)象和數(shù)據(jù)庫(kù)表之間建立起一個(gè)映射關(guān)系,這樣,我們只需要通過(guò)操作這些 值對(duì)象和Hibernate提供的一些基本類,就可以達(dá)到使用數(shù)據(jù)庫(kù)的目的。
32 寫(xiě)出實(shí)現(xiàn)單例模式的代碼?
答:
33 J2EE是什么?J2EE中有哪些組件,你的項(xiàng)目中用到了哪些組件?
答: Je22是Sun公司提出的多層(multi-diered),分布式(distributed),基于組件(component-base)的企業(yè)級(jí)應(yīng)用模型(enterpriese application model).在這樣的一個(gè)應(yīng)用系統(tǒng)中,可按照功能劃分為不同的組件,這些組件又可在不同計(jì)算機(jī)上,并且處于相應(yīng)的層次 (tier)中。所屬層次包括客戶層(clietn tier)組件,web層和組件,Business層和組件,企業(yè)信息系統(tǒng)(EIS)層
34 簡(jiǎn)述你的項(xiàng)目的架構(gòu)及工作流程?
答:
35 String 和 StringBuffer 的區(qū)別?什么情況下用哪種字符串類?
答: JAVA平臺(tái)提供了兩個(gè)類:String和StringBuffer,它們可以儲(chǔ)存和操作字符串,即包含多個(gè)字符的字符數(shù)據(jù)。這個(gè)String類提供了 數(shù)值不可改變的字符串。而這個(gè)StringBuffer類提供的字符串進(jìn)行修改。當(dāng)你知道字符數(shù)據(jù)要改變的時(shí)候你就可以使用StringBuffer。 典型地,你可以使用StringBuffers來(lái)動(dòng)態(tài)構(gòu)造字符數(shù)據(jù)。
36 java 中的序列化操作要實(shí)現(xiàn)什么接口?并實(shí)現(xiàn)什么方法?
答: 實(shí)現(xiàn)Externalizable接口。Externalizable接口定義包括兩個(gè)方法writeExternal()與readExternal()。利用這些方法可以控制對(duì)象數(shù)據(jù) 成員如何寫(xiě)入字節(jié)流.類實(shí)現(xiàn)Externalizable時(shí),頭寫(xiě)入對(duì)象流中,然后類完全負(fù)責(zé)序列化和恢復(fù)數(shù)據(jù)成員。
37 接口中可以定義屬性嗎?如果可以應(yīng)該定義什么類型的屬性?
答:可以 應(yīng)該定義public類型的屬性,不寫(xiě)則默認(rèn)為 public static類型的
JavaScript 是一種腳本語(yǔ)言,官方名稱為 ECMAScript(因定義語(yǔ)言的標(biāo)準(zhǔn)為 ECMA-262)。JS 的主要特點(diǎn):1. 語(yǔ)法類似于常見(jiàn)的高級(jí)語(yǔ)言,如 C 和 Java;2. 腳本語(yǔ)言,不需要編譯就可以由解釋器直接運(yùn)行;3. 變量松散定義,屬于弱類型語(yǔ)言;4. 面向?qū)ο蟮摹?/p>
JS 最初是為網(wǎng)頁(yè)設(shè)計(jì)而開(kāi)發(fā)的,現(xiàn)在也是 Web 開(kāi)發(fā)的重要語(yǔ)言。它支持對(duì)瀏覽器(瀏覽器對(duì)象模型,BOM)和 HTML 文檔(文檔對(duì)象模型,DOM)進(jìn)行操作,而使網(wǎng)頁(yè)呈現(xiàn)動(dòng)態(tài)的交互特性。
嚴(yán)格的說(shuō),JS 只是 ECMAScript 的一種實(shí)現(xiàn),是 ECMAScript 和 BOM、DOM 組成的一種 Web 開(kāi)發(fā)技術(shù)。
javascript原型,原型鏈特點(diǎn):原型鏈實(shí)現(xiàn)了繼承。
JS中每個(gè)函數(shù)都存在有一個(gè)原型對(duì)象屬性prototype。并且所有函數(shù)的默認(rèn)原型都是Object的實(shí)例。每個(gè)繼承父函數(shù)的子函數(shù)的對(duì)象都包含一個(gè)內(nèi)部屬性proto。該屬性包含一個(gè)指針,指向父函數(shù)的prototype。若父函數(shù)的原型對(duì)象的_proto_屬性為再上一層函數(shù)。在此過(guò)程中就形成了原型鏈。
原型鏈的作用是用來(lái)實(shí)現(xiàn)繼承,比如我們新建一個(gè)數(shù)組,數(shù)組的方法就是從數(shù)組的原型上繼承而來(lái)的。
var arr = [];
arr.map === Array.prototype.map //arr.map
是從arr.__proto__上繼承下來(lái)的,arr.__proto__也就是Array.prototype。
擴(kuò)展資料:
1.JS中每個(gè)函數(shù)都存在有一個(gè)原型對(duì)象屬性prototype。并且所有函數(shù)的默認(rèn)原型都是Object的實(shí)例。
2.每個(gè)繼承父函數(shù)的子函數(shù)的對(duì)象都包含一個(gè)內(nèi)部屬性_proto_。該屬性包含一個(gè)指針,指向父函數(shù)的prototype。若父函數(shù)的原型對(duì)象的_proto_屬性為再上一層函數(shù)。在此過(guò)程中就形成了原型鏈。
3.原型鏈實(shí)現(xiàn)了繼承。原型鏈存在兩個(gè)問(wèn)題:a 包含引用類型值的原型屬性會(huì)被所有實(shí)例共享。b 在創(chuàng)建子類型時(shí),無(wú)法向超類型的構(gòu)造函數(shù)中傳遞參數(shù)。
參考資料:百度百科-javascript
本文名稱:javascript享元,享元模式 js
新聞來(lái)源:http://jinyejixie.com/article2/dsesoic.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)、網(wǎng)站內(nèi)鏈、手機(jī)網(wǎng)站建設(shè)、企業(yè)網(wǎng)站制作、響應(yīng)式網(wǎng)站、面包屑導(dǎo)航
聲明:本網(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í)需注明來(lái)源: 創(chuàng)新互聯(lián)