更新時間:2022-12-27 11:59:30 來源:動力節點 瀏覽2145次
Java作用域分為public,protected,friendly,private.
首先按照作用Java作用域范圍來算:是PageContext(jsp頁面)
若在不同作用域有相同名稱的對象,則系統的查找順序為page->request->session->application
application作用域:所有作用域中范圍最大的域,由于所有servlet共享一個servletcontext對象,所有多個servlet通過servletcontext可以實現數據在不同servlet之間的共享,是一個全局變量
httpsession作用域:范圍第二大的域,(會話范圍)在第一次調用request.getSession()方法時,服務器會檢查是否已經有對應的session。如果沒有,就在內存中創建一個session并返回。當一短時間內(默認30分鐘)session沒有被使用,則服務器會銷毀該session。若服務器非正常關閉,未到期的session也會跟著銷毀。若調用session提供的invalidate()方法,可以立即銷毀session。
servletRequest作用域:范圍第三大的域,在整個請求鏈中共享數據,最長用于在servlet中處理好的數據交給jsp顯示,此時參數就可以放置在servletRequest域中帶過去
PageContext作用域:范圍最小的一個域,可以獲取其他八大內置對象,可以認為是一個入口對象,能夠獲取其他所有域中的數據。能跳轉到其他資源,其身上提供forward和sendRedirect方法,簡化了轉發和重定向的操作,代表頁面上下文,該對象主要用于訪問jsp之間的共享數據,當對jsp的請求時開始,當響應結束時銷毀
作用域與可見性 | 當前類 | 同一package | 子類 | 其他package |
---|---|---|---|---|
public | √ | √ | √ | √ |
protected | √ | √ | √ | × |
default(friendly) | √ | √ | × | × |
private | √ | × | × | × |
public關鍵字在所有的包、類中都可以訪問
protected關鍵字僅在同包或者其子類中可以訪問
default關鍵字僅在同一包中可以訪問
private關鍵字僅在當前類中可以訪問
以上就是關于“Java四大作用域”的介紹,大家如果想了解給更多相關知識,不妨來關注一下本站的Java視頻教程,里面的課程內容從入門到精通,細致全面,通俗易懂,很適合沒有基礎的小伙伴學習,希望對大家能夠有所幫助。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習