一些常見的術語或者關鍵字
一、Java中static關鍵字
主要是參考瞭如下連結:
http://www.cnblogs.com/dolphin0520/p/3799052.html
1)static關鍵字
1、static屬於類而不屬於物件;
2、static可以用來修飾類的成員方法、類的成員變數;
3、被static關鍵字修飾的方法或者變數不需要依賴於物件來進行訪問,只要類被載入了,就可以通過類名去進行訪問。
static關鍵字的基本作用:
方便在沒有建立物件的情況下來進行呼叫(方法/變數)。
2)static方法
1、靜態方法中不能訪問類的非靜態成員變數和非靜態成員方法,因為非靜態成員方法/變數都是必須依賴具體的物件才能夠被呼叫。
2、但是在非靜態成員方法中可以訪問靜態成員方法/變數。
3)static變數
static變數也稱作靜態變數,靜態變數和非靜態變數的區別是:靜態變數被所有的物件所共享,在記憶體中只有一個副本,它當且僅當在類初次載入時會被初始化。而非靜態變數是物件所擁有的,在建立物件的時候被初始化,存在多個副本,各個物件擁有的副本互不影響。
二、Java中Override(重寫)與Overload(過載)
主要參考了以下兩篇博文:
https://blog.csdn.net/wei_zhi/article/details/52780371
http://www.runoob.com/java/java-override-overload.html
1)概念
現在出現了繼承的關係之後,那麼也就存在了子類和父類的聯絡。於是子類之中有可能定義和父類完全相同的方法或屬性的名稱,但是又需要子類對父類的允許訪問的方法的實現過程進行重新編寫。
其中當子類所定義的方法的名字、返回值型別、引數型別及個數與父類中的完全相同時,稱為方法的重寫(Override)
在一個類裡面,方法名字相同,而引數不同。返回型別可以相同也可以不同。稱為方法的過載(Overload)
2)Override(重寫)的規則
- 引數列表必須完全與被重寫方法的相同;
- 返回型別必須完全與被重寫方法的返回型別相同;
- 訪問許可權不能比父類中被重寫的方法的訪問許可權更低。例如:如果父類的一個方法被宣告為public,那麼在子類中重寫該方法就不能宣告為protected。
- 父類的成員方法只能被它的子類重寫。
- 宣告為final的方法不能被重寫。
- 宣告為static的方法不能被重寫,但是能夠被再次宣告。
- 子類和父類在同一個包中,那麼子類可以重寫父類所有方法,除了宣告為private和final的方法。
- 子類和父類不在同一個包中,那麼子類只能夠重寫父類的宣告為public和protected的非final方法。
- 重寫的方法能夠丟擲任何非強制異常,無論被重寫的方法是否丟擲異常。但是,重寫的方法不能丟擲新的強制性異常,或者比被重寫方法宣告的更廣泛的強制性異常,反之則可以。
- 構造方法不能被重寫。
- 如果不能繼承一個方法,則不能重寫這個方法。
3)Overload(過載)的規則
- 被過載的方法必須改變引數列表(引數個數或型別不一樣);
- 被過載的方法可以改變返回型別;
- 被過載的方法可以改變訪問修飾符;
- 被過載的方法可以宣告新的或更廣的檢查異常;
- 方法能夠在同一個類中或者在一個子類中被過載。
- 無法以返回值型別作為過載函式的區分標準。
三、MCV模型
1)概念
MVC全名是Model View Controller,是模型(model)-檢視(view)-控制器(controller)的縮寫。
一種軟體設計典範,用一種業務邏輯、資料、介面顯示分離的方法組織程式碼,將業務邏輯聚集到一個部件裡面,在改進和個性化
定製介面及使用者互動的同時,不需要重新編寫業務邏輯。
Model(模型)表示應用程式核心(比如資料庫記錄列表)。
View(檢視)顯示資料(資料庫記錄)。
Controller(控制器)處理輸入(寫入資料庫記錄)。
2)Java幾種框架
1、Struts
由一個名為ActionServlet的Servlet充當控制器(Controller)的角色,根據描述模型、檢視、控制器對應關係的struts-config.xml
的配置檔案,轉發檢視(View)的請求,組裝響應資料模型(Model)。
2、Spring
面向切面:
AOP(Aspect-Oriented Programming),面向切面程式設計,就是把可重用的功能提取出來,然後將這些通用功能在合適的時候植
入到應用程式中,比如事務管理、許可權控制、日誌記錄、效能統計等。
反轉控制和依賴注入:
IoC(Iversion of Controller),不在程式碼裡直接組裝元件和服務,但是要在配置檔案裡描述哪些元件需要哪些服務,之後一個容
器(IOC容器)負責把他們組裝起來。
DI(Dependency Injection),元件之間依賴關係由容器在執行期決定,形象的說,即由容器動態的將某個依賴關係注入到元件
之中。依賴注入的目的並非為軟體系統帶來更多功能,而是為了提升元件重用的頻率,併為系統搭建一個靈活、可擴充套件的平臺。
有關依賴注入和反轉控制詳細的見如下連結:
https://blog.csdn.net/sinat_21843047/article/details/80297951
3、SpringMVC
spring mvc是一個基於mvc的web框架。spring mvc是spring框架的一個模組,springmvc和spring無需通過中間整合層進行整合。
四、xml檔案
主要參考如下連結:
https://www.cnblogs.com/stroll/p/7064503.html
1)概念
xml(Extensible Markup Language):即可擴充套件標記語言,xml是網際網路資料傳輸的重要工具,它可以跨越網際網路任何的平臺,
不受程式語言和作業系統的限制。
2)xml的特點及作用
1、特點:
xml與作業系統、程式語言的開發平臺都無關;
實現不同系統之間的資料互動。
2、作用:
配置應用程式和網站;
資料互動;
Ajax基石。
五、API(Application Programming Interface)
指應用程式程式設計介面,是一些預先定義的函式,目的是提供應用程式與開發人員基於某軟體或硬體得以訪問一組例程的能力,而又無需訪問原始碼,或理解內部工作機制的細節。
六、JSP與表示式語言(EL)
JSP全稱Java Server Pages,是一種動態網頁開發技術,執行在服務端。它使用JSP標籤在HTML網頁中插入Java程式碼。標籤通常以<%開頭
以%>結束。
表示式語言(EL)可以訪問和處理應用程式資料,而無須使用JSP指令碼元素或JSP表示式。