java中的final static關鍵字

2021-08-06 04:41:07 字數 1269 閱讀 9492

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,子類方法名,引數型別和個數,返...