final關鍵字:
1、用於類上:該類不能被繼承(終極類)
2、用於方法上:該方法不能被重寫
(final方法
不能被子類修改,子類只可以呼叫
3、放在屬性上:為常量(該值只能使用,不能被改變,常量必須要賦初值)
final string s = "123";//該屬性常量不能被修改
public final void mm()
//該方法不能被子類修改,只能呼叫
public final class testpci
//該類為終極類,不能被繼承
static關鍵字:
(靜態)
static加在屬性上為靜態屬性,也可叫類屬性
static加在方法上為靜態方法,也可叫類方法
public class aa
}
類屬性的使用方式:
1.物件.類屬性
2.類名.類屬性(推薦)
aa aa = new aa();
aa.s = "123";
類屬性/靜態屬性(斜體)
類屬性和普通屬性的區別:
1。使用方法的區別:類屬性不需要建立物件就可以使用,
普通屬性必須要建立物件
類屬性:類名.屬性名
普通屬性:物件名.屬性名
2。各自的特點:
類屬性屬於全域性的,所有的物件共用乙個屬性值
普通屬性是每個物件屬性值時特定的,改變乙個物件屬性,另 乙個物件屬性值不會發生變化
類方法/靜態方法/工具方法
不需要建立物件就可以使用
乙個類載入順序:
靜態屬性(類屬性) --->靜態**塊 ---> 普通屬性 --->**塊 --->構造
如果類有靜態屬性或**塊
只要類被載入,無需建立物件,就會呼叫類中的靜態內容
類初始化順序:
父類的類屬性 ---> 父類靜態**塊 ---> 子類的類屬性 --
---> 子類靜態**塊 ---> 父類屬性 ---> 父類**塊 ---
---> 父類構造 ---> 子類屬性 ---> 子類**塊 ---> 子類構造
靜態方法:在不使用類中普通屬性的前提下,才能使用
靜態方法與非靜態方法之間的呼叫
1、靜態方法不能直接呼叫非靜態方法, 非靜態方法可以呼叫靜態方法
2、靜態方法如果要呼叫非靜態方法,必須要建立物件, 通過物件.方法()呼叫
java中的演算法
第一種 迴圈 for int x 1 x 500 x 第二種 bigdecimal double x 0 double y 0 bigdecimal xbig new bigdecimal x bigdecimal ybig new bigdecimal y bigdecimal result ne...
java中的覆蓋
override可以翻譯為覆蓋,從字面就可以知道,它是覆蓋了乙個方法並且對其重寫,以求達到不同的作用。對我們來說最熟悉的覆蓋就是對介面方法的實現,在介面中一般只是對方法進行了宣告,而我們在實現時,就需要實現介面宣告的所有方法。除了這個典型的用法以外,我們在繼承中也可能會在子類覆蓋父類中的方法。在覆蓋...
Java中的重寫
重寫子類方法是,徹底覆蓋掉從父類繼承而來的方法。想想不覆蓋會出現什麼結果?之所以覆蓋掉父類中的某些方法,完全是因為從父類繼承而來的這個方法不是很合適之類,所以重寫這個方法後,就能夠遮蔽從父類繼承而來的這個方法。還有一點想說的就是重寫方法後,還有利於多型。重寫的要求 1,子類方法名,引數型別和個數,返...