freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

手動(dòng)實(shí)現(xiàn)ioc框架-預(yù)覽頁(yè)

 

【正文】 private Elements mElementUtils。 mTypeUtils = ()。 } /** * 標(biāo)示該處理器捕獲處理的注解類型 */ Override public SetString getSupportedAnnotationTypes() { SetString annotationTypes = new LinkedHashSet()。 } private MapString, ProxyInfo mProxyMap = new HashMap()。:autoservice:,在這里有一個(gè)疑問(wèn),為什么要使用該注解呢,生成的jar包郵什么特殊的地方嗎?因?yàn)樵搄ar包是提供于注解時(shí)期的,所以其有特殊的目錄形式:除了有最基本的類以外,多了METAINF的service目錄,該目錄中的文件命名是固定的,其內(nèi)容很簡(jiǎn)單就一行內(nèi)容,標(biāo)明主要的處理類。那么看一下process的實(shí)現(xiàn): private MapString, ProxyInfo mProxyMap = new HashMap()。 } VariableElement variableElement = ((VariableElement) element)。 if (proxyInfo == ) { proxyInfo = new ProxyInfo(mElementUtils, typeElement)。 (id, variableElement)。 (())。 } } return true。 } if ((annotatedElement)) { error(annotatedElement, %s() must can not be private., ())。 } (, message, element)。保存了類以及注解的相關(guān)信息之后,便是生成代碼,循環(huán)mProxyMap獲取相關(guān)類,生成代碼,其實(shí)就是通過(guò)流寫文件,(())。\n\n)。\n39。 // 添加inject()方法 generateMethods(builder)。 (}\n)。 for (int id : ()) { VariableElement element = (id)。 (( + type + )(( source, + id + ))。最終我們編寫完了在編譯期需要用到的jar。public class ViewFinder { private static final ActivityProvider PROVIDER_ACTIVITY = new ActivityProvider()。 } // 注入的最終調(diào)用 public static void inject(Object host, Object source, Provider provider) { Class? clazz = ()。// 獲取輔助類的class Finder viewInjector = (Finder) ()。因?yàn)樵谏奢o助類的時(shí)候,我們是根據(jù)類名+$$finder的固定寫法,所以很容易的通過(guò)class的形式生成輔助類的實(shí)例化,并調(diào)用inject方法。 }}有沒(méi)有感覺(jué)到一種抓住了什么的感覺(jué),再仔細(xì)看一下ViewFinder類,提供了兩個(gè)inject()方法,分別是從Activity中注入,一種是從View中注入,為什么從View中注入,我們需要多傳入一個(gè)Object對(duì)象呢?仔細(xì)觀察發(fā)現(xiàn):host其實(shí)是我們成員變量所在的類source:findViewById操作的類,provider: 對(duì)findViewById的一層封住,便于處理Activity和View兩種情況??偨Y(jié)通過(guò)以上的流程可以發(fā)現(xiàn),我們?cè)诰幾g期生成輔助類用以完成findViewByI
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1