java final 方法重载_java方法重载和覆写的定义,static和final修饰符的讲解,java面试题...
方法重載的規則:
1、必須發生在同一個類的下面
2、必須保證方法名字相同
3、參數列表不同
參數的類型不同
參數的個數不同
參數的順序不同
4、返回值:和返回值無關
5、修飾符:和修飾符無關
6、拋出異常:無關
例子:
public void add(int i);
public void add(double d);
public void add(long l);
poublc void add(String s);
方法重寫(也叫做覆寫):
1、一定發生在繼承關系中
2、子類中重寫父類中存在的方法
3、規則:
方法名稱必須相同
參數列表必須相同
子類返回值類型可以比父類小,至少要相同
子類拋出的異常比父類的小,至少要相同
子類的權限訪問必須比父類的大,至少要相同
例子:
如果父類返回值是默認的,子類重寫返回值不可以為private,可以與父類相同也可以定義為public;
總結:重寫要滿足 "在子父類中,兩同兩小一大""
static修飾符:(靜態)
修飾變量:靜態變量,被該類的所有對象共享,只存在一個
成員變量:只能修飾這個
局部變量:不可以修飾局部變量
修飾方法:靜態方法
靜態方法中不能夠出現非靜態的成員變量
靜態方法的調用方式:類名.方法名();不用創建對象,因為依賴與類存在
非靜態方法中可以使用靜態變量
非靜態方法的調用方式:對象名.方法名();需要創建對象,因為依賴與對象存在
修飾代碼塊:靜態代碼塊 ?{}
靜態代碼塊隨著程序的運行,只會執行一次
非靜態的代碼塊會隨著對象的創建而執行,有幾個對象,則執行幾次
注意:如果同時出現多個靜態代碼塊和普通代碼塊,則靜態代碼塊優先按照聲明的順序進行,只執行一次,
然后在按照普通代碼塊的聲明順序開始進行
總結:靜態成員依賴于類的存在
非靜態(實例)成員是依賴于對象的存在
final修飾符:(最終的、最后的、不可改變的)
變量:
final變量能被顯示的初始化并且只能初始一次,被聲明為final的對象的引用不能指向不同的對象,但是final對象里的數據可以被改變 也就是說final對象的引用不能改變,但是里面的值可以改變; final修飾變量相當于一個常量,只可以賦值一次;
靜態變量:必須在聲明的時候顯性的賦值
實例變量:可以在聲明階段先聲明,可以在構造器中進行初始化,如果有多個構造器,則每一個構造器中都要對該實例變量進行初始化
方法:
被final修飾的方法不可以被子類重寫
類:
final修飾類不可以被繼承,說明該類功能已經很完整,不允許再擴展
String
StringBuffer
StringBuilder
append
代碼塊:不能修飾代碼塊
構造器:不能修飾構造器
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的java final 方法重载_java方法重载和覆写的定义,static和final修饰符的讲解,java面试题...的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: ebs和java哪个前景好_EBS与实例
- 下一篇: java 定时任务spring_Spri
