第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

對于.class的問題.

對于.class的問題.

JKWong 2016-04-23 15:51:07
這個課程講的Class類實例對象的方法時,第一種就是Class<?>cs=Foo.class,其實這個.class是一個靜態(tài)變量嗎?因為他可以直接用類名調(diào)取?還有對于一些采用單例設(shè)計模式,我們怎樣運用反射取得某個類實例對象呢?
查看完整描述

1 回答

已采納
?
HansonQ

TA貢獻(xiàn)223條經(jīng)驗 獲得超56個贊

public?class?A{
????private?static?A?a?=?new?A();
????private?A(){};//私有化構(gòu)造函數(shù)
????public?A?getSingleton(){
????????return?a;
????}
}
//上面這個就是簡單的單例

我們知道反射可以反射出一個類的任意構(gòu)造方法。
對應(yīng)公共的構(gòu)造方法我們可以直接利用但是對于私有的構(gòu)造函數(shù),我們需要取消代碼校驗(也就是暴力訪問)
Class<A>?a??=?A.class;//靜態(tài)變量(沒深入想過,一般是不會使用這個這個方法)
Class<A>?clazz?=?Class.forName("A類的權(quán)限路徑");//這種用的比較多
Constructor?cons?=?clazz.getDeclaredConstructor();//獲得私有的構(gòu)造函數(shù)
cons.setAccessible(true);//暴力訪問
Object?object?=?cons.newInstance();//實例化對象


查看完整回答
1 反對 回復(fù) 2016-04-26
  • JKWong
    JKWong
    其實暴力訪問是不是為了可以直接訪問它的被封裝的構(gòu)造方法?
  • HansonQ
    HansonQ
    對于私有的都可以使用暴力訪問
  • JKWong
    JKWong
    我有一個不用暴力訪問的方法,不過要結(jié)合單例模式的設(shè)計方法,加上利用反射調(diào)用方法也可以,不過謝謝你提出暴力訪問,我試試
  • 1 回答
  • 0 關(guān)注
  • 1533 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號