最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

干貨來了!| 125 條常見的 java 面試筆試題大匯總 |(75/125)| 日更中!

2021-08-29 20:49 作者:今天IT了嗎  | 我要投稿

更多資源關注公眾號【今天IT了嗎】獲?。?/strong>

51、垃圾回收的優(yōu)點和原理。并考慮2 種回收機制。

Java 語言中一個顯著的特點就是引入了垃圾回收機制,使c++程序員最頭疼的內(nèi)存管理 的問題迎刃而解,它使得 Java 程序員在編寫程序的時候不再需要考慮內(nèi)存管理。由于有個 垃圾回收機制,Java 中的對象不再有"作用域"的概念,只有對象的引用才有"作用域"。垃圾 回收可以有效的防止內(nèi)存泄露,有效的使用可以使用的內(nèi)存。垃圾回收器通常是作為一個單 獨的低級別的線程運行,不可預知的情況下對內(nèi)存堆中已經(jīng)死亡的或者長時間沒有使用的對 象進行清楚和回收,程序員不能實時的調(diào)用垃圾回收器對某個對象或所有對象進行垃圾回 收?;厥諜C制有分代復制垃圾回收和標記垃圾回收,增量垃圾回收。

52、請說出你所知道的線程同步的方法。

wait():使一個線程處于等待狀態(tài),并且釋放所持有的對象的 lock。

sleep():使一個正在運行的線程處于睡眠狀態(tài),是一個靜態(tài)方法,調(diào)用此方法要捕捉 InterruptedException 異常。

notify():喚醒一個處于等待狀態(tài)的線程,注意的是在調(diào)用此方法的時候,并不能確切的 喚醒某一個等待狀態(tài)的線程,而是由 JVM 確定喚醒哪個線程,而且不是按優(yōu)先級。

notityAll():喚醒所有處入等待狀態(tài)的線程,注意并不是給所有喚醒線程一個對象的鎖, 而是讓它們競爭。

53、你所知道的集合類都有哪些?主要方法??

最常用的集合類是 List 和 Map。 List 的具體實現(xiàn)包括 ArrayList 和 Vector,它們是可變大小的列表,比較適合構(gòu)建、存 儲和操作任何類型對象的元素列表。 List 適用于按數(shù)值索引訪問元素的情形。 Map 提供了一個更通用的元素存儲方法。 Map 集合類用于存儲元素對(稱作"鍵"和" 值"),其中每個鍵映射到一個值。

54、描述一下JVM 加載 class文件的原理機制??

JVM 中類的裝載是由 ClassLoader 和它的子類來實現(xiàn)的,Java ClassLoader 是一個重要的 Java 運行時系統(tǒng)組件。它負責在運行時查找和裝入類文件的類。

55、char型變量中能不能存貯一個中文漢字?為什么??

能夠定義成為一個中文的,因為 java 中以 unicode 編碼,一個 char 占 16 個字節(jié),所以 放一個中文是沒問題的?

56、多線程有幾種實現(xiàn)方法,都是什么?同步有幾種實現(xiàn)方法,都是什 么??

多線程有兩種實現(xiàn)方法,分別是繼承 Thread 類與實現(xiàn) Runnable 接口同步的實現(xiàn)方面有 兩種,分別是 synchronized,wait 與 notify

57、JSP的內(nèi)置對象及方法。

request 表示 HttpServletRequest 對象。它包含了有關瀏覽器請求的信息,并且提供了幾 個用于獲取 cookie, header, 和 session 數(shù)據(jù)的有用的方法。 response 表示 HttpServletResponse 對象,并提供了幾個用于設置送回瀏覽器的響應的方 法(如 cookies,頭信息等) out 對象是 javax.servlet.jsp.JspWriter 的一個實例,并提供了幾個方法使你能用于向瀏覽 器回送輸出結(jié)果。 pageContext 表示一個 javax.servlet.jsp.PageContext 對象。它是用于方便存取各種范圍的 名字空間、servlet 相關的對象的 API,并且包裝了通用的 servlet 相關功能的方法。 session 表示一個請求的 javax.servlet.http.HttpSession 對象。Session 可以存貯用戶的狀態(tài) 信息 applicaton 表示一個 javax.servle.ServletContext 對象。這有助于查找有關 servlet 引擎和 servlet 環(huán)境的信息 config 表示一個 javax.servlet.ServletConfig 對象。該對象用于存取 servlet 實例的初始化 參數(shù)。 page 表示從該頁面產(chǎn)生的一個 servlet 實例?

58、線程的基本概念、線程的基本狀態(tài)以及狀態(tài)之間的關系?

線程指在程序執(zhí)行過程中,能夠執(zhí)行程序代碼的一個執(zhí)行單位,每個程序至少都有一個 線程,也就是程序本身。Java 中的線程有四種狀態(tài)分別是:運行、就緒、掛起、結(jié)束。

59、JSP的常用指令

<%@page language="java" csession="true" buffer="64kb" autoFlush="true" isThreadSafe="true"info="text" errorPage="error.jsp" isErrorPage="true" isELIgnored="true"page Encoding="gb2312" import="java.sql.*"%> isErrorPage(是否能使用 Exception 對象),isELIgnored(是否忽略表達式) <%@include file="filename"%> <%@taglib prefix="c"uri="http://......"%>

60、什么情況下調(diào)用doGet()和 doPost()??

Jsp 頁面中的 form 標簽里的 method 屬性為 get 時調(diào)用 doGet(),為 post 時調(diào)用 doPost()。

61、servlet 的生命周期

web 容器加載 servlet,生命周期開始。通過調(diào)用 servlet 的 init()方法進行 servlet 的初始 化。通過調(diào)用 service()方法實現(xiàn),根據(jù)請求的不同調(diào)用不同的 do***()方法。結(jié)束服務,web 容器調(diào)用 servlet 的 destroy()方法

?62、如何現(xiàn)實servlet 的單線程模式

<%@ page isThreadSafe="false"%>

63、頁面間對象傳遞的方法

request,session,application,cookie 等?

64、JSP和 Servlet有哪些相同點和不同點,他們之間的聯(lián)系是什么?

JSP 是 Servlet 技術的擴展,本質(zhì)上是 Servlet 的簡易方式,更強調(diào)應用的外表表達。JSP 編譯后是"類 servlet"。Servlet 和 JSP 最主要的不同點在于,Servlet 的應用邏輯是在 Java 文 件中,并且完全從表示層中的 HTML 里分離開來。而JSP 的情況是 Java 和 HTML 可以組合 成一個擴展名為.jsp 的文件。JSP 側(cè)重于視圖,Servlet 主要用于控制邏輯。

65、四種會話跟蹤技術?

會話作用域 ServletsJSP 頁面描述 page 是代表與一個頁面相關的對象和屬性。一個頁面 由一個編譯好的 Java servlet 類(可以帶有任何的 include 指令,但是沒有 include 動作) 表示。這既包括 servlet 又包括被編譯成 servlet 的 JSP 頁面 request 是是代表與 Web 客戶 機發(fā)出的一個請求相關的對象和屬性。一個請求可能跨越多個頁面,涉及多個 Web 組 件(由 于 forward 指令和 include 動作的關系)session 是是代表與用于某個 Web 客戶機的一個用 戶體驗相關的對象和屬性。一個 Web 會話可以也經(jīng)常會跨越多個客戶機請求 application 是 是代表與整個 Web 應用程序相關的對象和屬性。這實質(zhì)上是跨越整個 Web應用程序,包 括多個頁面、請求和會話的一個全局作用域

66、Request對象的主要方法:

setAttribute(String name,Object):設置名字為 name 的 request 的參數(shù)值 getAttribute(String name):返回由 name 指定的屬性值 getAttributeNames():返回 request 對象所有屬性的名字集合,結(jié)果是一個枚舉的實例 getCookies():返回客戶端的所有 Cookie 對象,結(jié)果是一個 Cookie 數(shù)組 getCharacterEncoding():返回請求中的字符編碼方式 getContentLength():返回請求的 Body 的長度 getHeader(String name):獲得 HTTP 協(xié)議定義的文件頭信息 getHeaders(String name):返回指定名字的 request Header 的所有值,結(jié)果是一個枚舉的 實例 getHeaderNames():返回所以 request Header 的名字,結(jié)果是一個枚舉的實例 getInputStream():返回請求的輸入流,用于獲得請求中的數(shù)據(jù) getMethod():獲得客戶端向服務器端傳送數(shù)據(jù)的方法 getParameter(String name):獲得客戶端傳送給服務器端的有 name 指定的參數(shù)值 getParameterNames():獲得客戶端傳送給服務器端的所有參數(shù)的名字,結(jié)果是一個枚舉 的實例 getParameterValues(String name):獲得有 name 指定的參數(shù)的所有值 getProtocol():獲取客戶端向服務器端傳送數(shù)據(jù)所依據(jù)的協(xié)議名稱 getQueryString():獲得查詢字符串 getRequestURI():獲取發(fā)出請求字符串的客戶端地址 getRemoteAddr():獲取客戶端的 IP 地址getRemoteHost():獲取客戶端的名字 getSession([Boolean create]):返回和請求相關 Session getServerName():獲取服務器的名字 getServletPath():獲取客戶端所請求的腳本文件的路徑 getServerPort():獲取服務器的端口號 removeAttribute(String name):刪除請求中的一個屬性?

67、J2EE 是技術還是平臺還是框架?

J2EE 本身是一個標準,一個為企業(yè)分布式應用的開發(fā)提供的標準平臺。 J2EE 也是一個框架,包括 JDBC、JNDI、RMI、JMS、EJB、JTA等技術。

68、我們在web應用開發(fā)過程中經(jīng)常遇到輸出某種編碼的字符,如 iso8859-1 等,如何輸出一個某種編碼的字符串?

Public String translate (String str) { String tempStr = ""; try { tempStr = new String(str.getBytes("ISO-8859-1"), "GBK"); tempStr = tempStr.trim(); } catch (Exception e) { System.err.println(e.getMessage()); } return tempStr; }?

69、簡述邏輯操作(&,|,^)與條件操作(&&,||)的區(qū)別。?

區(qū)別主要答兩點: a.條件操作只能操作布爾型的,而邏輯操作不僅可以操作布爾型,而且可以操作數(shù)值型 b.邏輯操作不會產(chǎn)生短路

70、XML文檔定義有幾種形式?它們之間有何本質(zhì)區(qū)別?解析XML 文檔有哪幾種方式?

a: 兩種形式 dtd schema, b: 本質(zhì)區(qū)別:schema 本身是 xml 的,可以被 XML 解析器解析(這也是從 DTD 上發(fā)展 schema 的根本目的), c:有 DOM,SAX,STAX 等 DOM:處理大型文件時其性能下降的非常厲害。這個問題是由 DOM 的樹結(jié)構(gòu)所造成的, 這種結(jié)構(gòu)占用的內(nèi)存較多,而且 DOM 必須在解析文件之前把整個文檔裝入內(nèi)存,適合對 XML 的隨機訪問 SAX:不現(xiàn)于 DOM,SAX 是事件驅(qū)動型的 XML 解析方式。它順序讀取 XML 文件,不需 要一次全部裝載整個文件。當遇到像文件開頭,文檔結(jié)束,或者標簽開頭與標簽結(jié)束時,它 會觸發(fā)一個事件,用戶通過在其回調(diào)事件中寫入處理代碼來處理 XML 文件,適合對 XML 的順序訪問 STAX:Streaming API for XML (StAX)

71、簡述 synchronized 和 java.util.concurrent.locks.Lock的異同?

主要相同點:Lock 能完成 synchronized 所實現(xiàn)的所有功能 主要不同點:Lock 有比 synchronized 更精確的線程語義和更好的性能。synchronized 會 自動釋放鎖,而 Lock 一定要求程序員手工釋放,并且必須在 finally 從句中釋放。

72、EJB 的角色和三個對象

一個完整的基于 EJB 的分布式計算結(jié)構(gòu)由六個角色組成,這六個角色可以由不同的開發(fā) 商提供,每個角色所作的工作必須遵循 Sun 公司提供的 EJB 規(guī)范,以保證彼此之間的兼容 性。這六個角色分別是 EJB 組件開發(fā)者(Enterprise Bean Provider)、應用組合者(application Assembler)、部署者( Deployer)、 EJB 服務器提供者(EJBServerProvider)、 EJB 容器提供 者(EJB Container Provider)、系統(tǒng)管理員(System Administrator)三個對象是 Remote(Local) 接口、Home(LocalHome)接口,Bean 類

73、EJB 容器提供的服務?

主要提供聲明周期管理、代碼產(chǎn)生、持續(xù)性管理、安全、事務管理、鎖和并發(fā)行管理等 服務。

74、EJB 規(guī)范規(guī)定 EJB 中禁止的操作有哪些?

1.不能操作線程和線程 API(線程 API 指非線程對象的方法如 notify,wait 等),

2.不能操作 awt,

3.不能實現(xiàn)服務器功能,

4.不能對靜態(tài)屬性存取,

5.不能使用 IO 操作直接存取文件系統(tǒng),

6.不能加載本地庫.,

7.不能將 this 作為變量和返回,

8.不能循環(huán)調(diào)用。?

75、remote 接口和 home 接口主要作用

remote 接口定義了業(yè)務方法,用于 EJB 客戶端調(diào)用業(yè)務方法。 home 接口是 EJB 工廠用于創(chuàng)建和移除查找 EJB 實例

干貨來了!| 125 條常見的 java 面試筆試題大匯總 |(75/125)| 日更中!的評論 (共 條)

分享到微博請遵守國家法律
淳化县| 临沂市| 永福县| 两当县| 贵德县| 平塘县| 乌恰县| 四会市| 浙江省| 镶黄旗| 葵青区| 慈利县| 克什克腾旗| 巴彦县| 泾川县| 井冈山市| 镇远县| 福建省| 休宁县| 张家川| 伊宁县| 三门县| 张掖市| 绩溪县| 民权县| 泽普县| 阿瓦提县| 将乐县| 南华县| 集贤县| 荣昌县| 康保县| 宣城市| 遂宁市| 吉木萨尔县| 崇礼县| 泰兴市| 徐闻县| 林周县| 卢龙县| 当涂县|