靜態方法和例項方法:
1、從邏輯關係來看:(優先順序2)
若方法與類的例項不存在邏輯上的聯絡,那麼用靜態方法。
反之則最好使用例項化方法。
2、從效能角度:(優先順序3)
若方法經常被呼叫,則用靜態方法更佳,因為這樣可以避免頻繁地例項化物件導致的資源占用,提高效能。
然而,由於靜態的東西,在構造的時候是在堆中聲稱的,在結束之前不會被釋放與改變,會一直占用記憶體空間,所以不宜有過多的靜態成員。
因此若方法不會經常被呼叫,則使用例項方法可能會更好。
3、從執行緒併發的角度考慮:(優先順序1)
要考慮方法是否存在嚴重的併發,
如果併發的可能性很大,則不適宜使用靜態方法。
如果併發的可能性很小,或者通過簡單的同步操作可以保證執行緒安全,那就可以考慮使用靜態方法,這種情況下,靜態方法要更快,更方便。
總結:考量採用何種方式,要看主要矛盾在什麼地方。
所以應該在保證不會產生併發的情況下,在方便快捷和開發難度上做乙個衡量。
靜態方法和例項方法的使用場景
靜態方法和例項方法 1 從邏輯關係來看 優先順序2 若方法與類的例項不存在邏輯上的聯絡,那麼用靜態方法。反之則最好使用例項化方法。2 從效能角度 優先順序3 若方法經常被呼叫,則用靜態方法更佳,因為這樣可以避免頻繁地例項化物件導致的資源占用,提高效能。然而,由於靜態的東西,在構造的時候是在堆中聲稱的...
PCA方法的應用場景
pca principal component analysis pca 是主成分分析方法,是一種較為粗糙的降維方法,對於小樣本量的資料來說,它不如因子分析方法實用。但是當資料量較大時,主成分分析方法就有了用武之地了。pca方法常用於人臉識別。當樣本資料成千上萬時,維數上千時,pca是非常有效的一種...
泛型方法應用場景
非泛型類能用泛型方法 public static void syninfofortable classclazz,list 其中t是不能呼叫任何方法的,想要t的型別,只能傳classclazz。那麼這個t怎麼用呢?你就把t認為是乙個返回型別 比如在方法中 listtblinfolistfromdb ...