getconstructor()和getdeclaredconstructor()區別:
getdeclaredconstructor(class<?>... parametertypes)
//返回指定引數的構造器,包括public的和非public的,當然也包括private的。
getdeclaredconstructors()返回所有構造器。
getconstructor(class<?>... parametertypes)
只返回訪問許可權是public的構造器。
getconstructors()只返回訪問許可權是public的構造器,不過沒有型別限制。
//**如下
public
class ttest catch (exception e)
}} class demo
private
demo(string i)
@override
public string tostring()
}
輸出:demo string
demo
這樣的話宣告private還有什麼意義嗎?
建構函式 訪問許可權private
一 建構函式 具有建構函式的類會在每次建立新物件時先呼叫此方法,所以非常適合在使用物件之前做一些初始化工作。如果子類中定義了建構函式則不會隱式呼叫其父類的建構函式。要執行父類的建構函式,需要在子類的建構函式中呼叫parent construct 如果子類沒有定義建構函式則會如同乙個普通的類方法一樣從...
把建構函式設成private
在c 11中,把建構函式設成private,提供靜態的makeshared方法,可以實現在類的建構函式執行完成後,執行特定的操作。如下所示的 在sharedtest的建構函式完成後,執行print函式 include include include class sharedtest public s...
從private建構函式談單例模式
今天實現乙個單例的時候,想到多執行緒getinstance 時可能會有問題,就查了一下單例的幾種實現方式。有一種被稱為 餓漢式 的實現 1 class manager25 static manager m pinstance 67 public 8 manager getinstance 912 1...