亚洲欧美精品沙发,日韩在线精品视频,亚洲Av每日更新在线观看,亚洲国产另类一区在线5

<pre id="hdphd"></pre>

  • <div id="hdphd"><small id="hdphd"></small></div>
      學(xué)習啦 > 創(chuàng)業(yè)指南 > 職場 > 面試題 > java實習生的有關(guān)面試題

      java實習生的有關(guān)面試題

      時間: 護托1061 分享

      java實習生的有關(guān)面試題

        Java常見的數(shù)據(jù)結(jié)構(gòu)有Collection和Map,其中Collection接口下包括List和Set接口,下面就由學(xué)習啦小編為大家介紹一下java實習生的有關(guān)面試題的文章,歡迎閱讀。

        java實習生的有關(guān)面試題篇1

        java的數(shù)據(jù)結(jié)構(gòu)你用過那些?map與set的本質(zhì)區(qū)別是什么

        數(shù)據(jù)結(jié)構(gòu):是指相互之間存在一種或多種特定關(guān)系的數(shù)據(jù)元素的集合。

        依據(jù)邏輯關(guān)系,數(shù)據(jù)結(jié)構(gòu)分為:線性和非線性數(shù)據(jù)結(jié)構(gòu)。

        java中常見的數(shù)據(jù)結(jié)構(gòu)有:

        (1)數(shù)組

        (2)集合類——Collection(list(ArrayList,LinkedList),set(HashSet))

        List 是鏈表(接口),是可以允許出現(xiàn)重復(fù)值的。它的具體實現(xiàn)類:ArrayList和LinkedList

        set 是集合(接口),不允許出現(xiàn)重復(fù)值。它的具體實現(xiàn)類HashMap

        ArrayList 實現(xiàn)鏈表的內(nèi)部結(jié)構(gòu)是用數(shù)組(Array)。查找高效,修改低效

        LinkedList 實現(xiàn)鏈表的內(nèi)部結(jié)構(gòu)是鏈表(Linked)。查找低效,修改高效

        set是集合(接口),不允許出現(xiàn)重復(fù)值

        Iterator迭代器

        簡介:java提供的迭代器接口進行java collection的遍歷。Iterator模式是用于遍歷類的標準訪問方法

        所有的繼承Coollection的集合類子類,都有Iterator()方法用于反饋迭代器,程序額可以獲取這個迭代器對象對Collection對象中的元素進行遍歷。

        (3)鍵值對容器 ——Map

        Map是一種把鍵對象和值對象進行關(guān)聯(lián)的容器

        指出:像set一樣,一個Map容器中的鍵對象不允許重復(fù),這是為了保證查找結(jié)果的一致性。

        Map與Set的區(qū)別

        Map是用來存放鍵值對的,需要轉(zhuǎn)成set由迭代器進行遍歷!(加強for循環(huán)除外)

        Map m=new Map();

        Set s=m.keySet()

        Set是無序而且不可用重復(fù)的!

        java實習生的有關(guān)面試題篇2

        Map與Set的本質(zhì)區(qū)別有:Set不能包含重復(fù)的元素,最多有一個空值,繼承自Collection接口,底層是Map實現(xiàn)機制。Map不能包含重復(fù)的鍵,每個鍵最多對應(yīng)一個映射的值,不能有空值鍵。兩接口提供的方法不完全一樣。

        Java常見的數(shù)據(jù)結(jié)構(gòu)有Collection和Map,其中Collection接口下包括List和Set接口,其下又有多個實現(xiàn)類如List下有ArrayList、LinkedList和Vector等實現(xiàn)類,Set下有HashSet、LinkedSet等實現(xiàn)類和SortedSet接口,HashSet下有LinkedHashSet子類,SortedSet接口下有TreeSet實現(xiàn)類。Map接口下有HashMap(有LinkedHashMap子類)、HashTable(有Properties子類)實現(xiàn)類和SortedMap接口(有TreeMap實現(xiàn)類)。

        JAVA的數(shù)據(jù)結(jié)構(gòu)主要有List、Set、Map、ArrayList、HashSet、HashMap、Properties等。

        Spring整合ORM框架時,事務(wù)管理用哪些類?是Spring控制事物的提交還是ORM框架控制?同一事物中執(zhí)行兩個更新操作,它的工作原理是怎么樣的

        Spring整合ORM框架時事務(wù)管理用的是相應(yīng)ORM框架的事務(wù)管理器類如Hibernate對應(yīng)于 HibernateTransactionManager,JPA對應(yīng)于JpaTransactionManager等。

        整合過后可配置由Spring控制事務(wù)的提交。

        事務(wù)提交前執(zhí)行兩個更新操作。其工作原理是采用AOP編程的原理來進行控制。

        Spring整合ORM框架時事務(wù)管理用的是相應(yīng)ORM框架的事務(wù)管理器類如Hibernate對應(yīng)于HibernateTransactionManager,JPA對應(yīng)于JpaTransactionManager等。整合過后可配置由Spring控制事務(wù)的提交。事務(wù)提交前執(zhí)行兩個更新操作。其工作原理是采用AOP編程的原理來進行控制。

        Http協(xié)議你了解嗎?文件上傳時,進度條的設(shè)計原理是什么

        超文本傳送協(xié)議 (hypertext transport protocol)

        一種詳細規(guī)定了瀏覽器和萬維網(wǎng)服務(wù)器之間互相通信的規(guī)則,通過因特網(wǎng)傳送萬維網(wǎng)文檔的數(shù)據(jù)傳送協(xié)議。

        HTTP工作在TCP/IP協(xié)議體系中的TCP協(xié)議上。

        客戶機和服務(wù)器必須都支持 HTTP,才能在萬維網(wǎng)上發(fā)送和接收 HTML 文檔并進行交互。

        HTTP是一個屬于應(yīng)用層的面向?qū)ο蟮膮f(xié)議,由于其簡捷、快速的方式,適用于分布式超媒體信息系統(tǒng)。

        HTTP主要特點:簡單快速 靈活 無連接 無狀態(tài)

        一般來說,上傳也好,下載也好,都要用到JavaI/O。 而計算進度的原理,不就是已經(jīng)傳輸?shù)拇笮∨c總大小的比值嘛。 這樣就簡單了,就拿最基本的OutputStream來說,它的基本的寫出方法為 void write(byte[] b) ,實際上寫出的過程不就是通過InputStream循環(huán)讀,然后OutputStream循環(huán)寫嘛。 你只要事先通過File類取得文件的總大小,然后在讀入或?qū)懗龅难h(huán)里加一個簡單的進度計算的步驟,每讀取或?qū)懗鲆淮?,就將已傳輸大小增加b.length,求出比值,更新進度條。具體的計算間隔,可以根據(jù)循環(huán)次數(shù)或時間間隔來定。 編碼上,估計要用到I/O流,F(xiàn)ile,Socket以及Thread。 因為你是使用fileupload插件,所以最好查看一下它的實現(xiàn)代碼,已決定如何將進度功能加入其中。

        Http協(xié)議即超文本傳輸協(xié)議,屬于應(yīng)用層的面向?qū)ο蟮膮f(xié)議。它支持客戶/服務(wù)器模式,簡單快速、靈活、無連接和無狀態(tài)。http請求由請求行、消息報頭、請求正文組成,http響應(yīng)由狀態(tài)行、消息報頭和響應(yīng)正文組成。

        文件上傳時進度條的設(shè)計原理:在java中主要用到I/O原理,已上傳的數(shù)據(jù)值除以文件總大小的比值即實時進度的值。通過File類獲取文件的總大小,在讀取或?qū)懗鑫募r加一個進度計算的步驟,每讀取或?qū)懗鲆淮尉陀嬎氵M度值,更新進度條。

        查詢一個字段值有重復(fù)的表,要去除重復(fù)項,SQL語句怎么寫

        select distinct xx,xx,xx from xxx

        java中的Annotation的工作原理是什么

        一個 annotation類型被定義為runtime retention后,它才是在運行時可見,當class文件被裝載時被保存在class文件中的annotation才會被虛擬機讀取

        Annotation提供一種機制,將程序的元素如:類,方法,屬性,參數(shù),本地變量,包和元數(shù)據(jù)聯(lián)系起來。這樣編譯器可以將元數(shù)據(jù)存儲在Class文件中。這樣虛擬機和其它對象可以根據(jù)這些元數(shù)據(jù)來決定如何使用這些程序元素或改變它們的行為。

        分層架構(gòu)中,Dao層的作用是什么?如果不要DAo層,能不能實現(xiàn)DAO層時的優(yōu)點

        Dao層又叫數(shù)據(jù)訪問對象層, 封裝數(shù)據(jù)庫的底層操作細節(jié)如數(shù)據(jù)庫的連接及對數(shù)據(jù)的CRUD等操作,它不但屏蔽了數(shù)據(jù)存儲最終介質(zhì)的不同,也屏蔽了具體實現(xiàn)技術(shù)的不同。一般在其上還會有Service層來封裝業(yè)務(wù)操作進行進一步的解耦。不用DAO層也能實現(xiàn)Dao層時的優(yōu)點如自己封裝一個類似Dao層功能的數(shù)據(jù)庫操作模板類,可參考Spring的DAO層思想

        HibernateDaoSupport,ActionSupport等類中所指的Support,是不是一種設(shè)計模式?若是,那說說你對這種感設(shè)計模式的理解

        它們用到了IoC和工廠模式,即依賴注入,將程序代碼中依賴對象的管理交由相應(yīng)的容器去管理如在配置文件中進行注入配置

        對數(shù)據(jù)庫的存儲的存儲過程熟悉嗎?對css熟悉嗎

        層疊樣式表(Cascading Style Sheet)簡稱“CSS”,通常又稱為“風格樣式表(Style Sheet)”,它是用來進行網(wǎng)頁風格設(shè)計的。它是一種用來表現(xiàn)HTML或 XML 等文件式樣的計算機語言。

        相對于傳統(tǒng)HTML的表現(xiàn)而言,CSS能夠?qū)W(wǎng)頁中的對象的位置排版進行像素級的精確控制,支持幾乎所有的字體字號樣式,擁有對網(wǎng)頁對象盒模型的能力,并能夠進行初步交互設(shè)計,是目前基于文本展示最優(yōu)秀的表現(xiàn)設(shè)計語言。

        在網(wǎng)頁上使用樣式表有三種方法可以在站點網(wǎng)頁上使用樣式表:

        將網(wǎng)頁鏈接到外部樣式表。

        在網(wǎng)頁上創(chuàng)建嵌入的樣式表。

        應(yīng)用內(nèi)嵌樣式到各個網(wǎng)頁元素。

        每一種方法均有其優(yōu)缺點:

        當要在站點上所有或部份的網(wǎng)頁上一致地應(yīng)用相同樣式時,可使用外部樣式表。在一個或多個外部樣式表中定義樣式,并將它們鏈接到所有網(wǎng)頁,便能確保所有網(wǎng)頁外觀的一致性。

        當人們只是要定義當前網(wǎng)頁的樣式,可使用嵌入的樣式表。嵌入的樣式表是一種級聯(lián)樣式表,“嵌”在網(wǎng)頁的 標記符內(nèi)。嵌入的樣式表中的樣式只能在同一網(wǎng)頁上使用。

        使用內(nèi)嵌樣式以應(yīng)用級聯(lián)樣式表屬性到網(wǎng)頁元素上。

        如果網(wǎng)頁鏈接到外部樣式表,為網(wǎng)頁所創(chuàng)建的內(nèi)嵌的或嵌入式樣式將擴充或覆蓋外部樣式表中的指定屬性。

        java實習生的有關(guān)面試題篇3

        說說Struts2的工作原理

        一個請求在Struts2框架中的處理分為以下幾個步驟:

        1.客戶端發(fā)出一個指向servlet容器的請求(tomcat);

        2.這個請求會經(jīng)過圖中的幾個過濾器,最后會到達FilterDispatcher過濾器

        3.過濾器FilterDispatcher是struts2框架的心臟,在處理用戶請求時,它和請求一起相互配合訪問struts2

        的底層框架結(jié)構(gòu)。在web容器啟動時,struts2框架會自動加載配置文件里相關(guān)參數(shù),并轉(zhuǎn)換成相應(yīng)的類。

        4.如果找到需要調(diào)用的Action,過濾器會把請求的處理交給ActionProxy。ActionProxy為Action的代理對象

        。ActionProxy通過ConfigurationManager詢問框架的配置文件,找到需要調(diào)用的Action類。

        5.ActionProxy創(chuàng)建一個ActionInvocation的實例。ActionInvocation在ActionProxy層之下,它表示了

        Action的執(zhí)行狀態(tài),或者說它控制的Action的執(zhí)行步驟。它持有Action實例和所有的Interceptor。

        6.ActionInvocation實例使用命名模式來調(diào)用,1. ActionInvocation初始化時,根據(jù)配置,加載Action相

        關(guān)的所有Interceptor。2. 通過ActionInvocation.invoke方法調(diào)用Action實現(xiàn)時,執(zhí)行Interceptor。在

        調(diào)用Action的過程前后,涉及到相關(guān)攔截器(intercepetor)的調(diào)用。

        7. 一旦Action執(zhí)行完畢,ActionInvocation負責根據(jù)struts.xml中的配置找到對應(yīng)的返回結(jié)果。返回結(jié)果

        通常是(但不總是,也可能是另外的一個Action鏈)一個需要被表示的JSP或者FreeMarker的模版。

        怎樣實現(xiàn)分頁顯示的?具體原理怎么樣?Hibernate的setMaxResults和setFirstResult內(nèi)部是怎么實現(xiàn)分頁查詢的?

        實現(xiàn)一個分頁組件,可自實現(xiàn)或借用相應(yīng)框架的實現(xiàn)。原理是求出所查數(shù)據(jù)總記錄數(shù),設(shè)置每頁要顯示的記錄數(shù),然后計算每頁要顯示的第一條記錄數(shù),根據(jù)每頁要顯示的記錄數(shù)和總記錄數(shù)來求出頁數(shù)等。

        Hibernate的setMaxResults和setFirstResult內(nèi)部是通過SQL語句來實現(xiàn)分頁查詢的,

        Hibernate框架的設(shè)計有什么不好的地方

        XML配置麻煩、映射文件可能過于冗余、查詢慢、對海量數(shù)據(jù)無能為力、太對象化限制了查詢、級聯(lián)關(guān)系也影響查詢速度等。 當然,最新版本的Hibernate采用EJB3注解的方式,大大的提高了它的應(yīng)用效率。

        你是怎么樣實現(xiàn)分頁顯示的?具體原理怎么樣?Hibernate的setMesResults和setFirsResult內(nèi)部是怎么實現(xiàn)分布查詢的

        Struts,Hibernate,Spring等框架,你最熟悉哪個?有沒有讀過它的源代碼?你用過Spring框架的那些功能

        學(xué)習JSF,Richface,JBoss Seam,JBPM該按什么順序,步驟去學(xué)習?

        先需要學(xué)習JAVA EE 相關(guān)技術(shù),如JSF2,EJB3,學(xué)完這些技術(shù)后,就可以學(xué)習Seam技術(shù)和Richface.

      3152686