简述java在安卓开发中的应用_Java 自定义注解在安卓开发中的简单运用
定義:注解(Annotation),也叫元數(shù)據(jù)。一種代碼級(jí)別的說明。它是JDK1.5及以后版本引入的一個(gè)特性,與類、接口、枚舉是在同一個(gè)層次。它可以聲明在包、類、接口、枚舉、字段、方法、局部變量、方法參數(shù)等的前面,用來對(duì)這些元素進(jìn)行說明,注釋。作用分類:
①編寫文檔:通過代碼里標(biāo)識(shí)的元數(shù)據(jù)生成文檔【生成文檔doc文檔】
② 代碼分析:通過代碼里標(biāo)識(shí)的元數(shù)據(jù)對(duì)代碼進(jìn)行分析【使用反射】
③編譯檢查:通過代碼里標(biāo)識(shí)的元數(shù)據(jù)讓編譯器能夠?qū)崿F(xiàn)基本的編譯檢查【Override】
java中有很多框架都用到了注解包括java的Api也是,想一些網(wǎng)絡(luò)框架的@GTE,@POST,@PATH等等,java中的@Override注解是可以被繼承的,它是可以在代碼編譯期告訴JVM類之間的繼承關(guān)系,那到底注解是怎么實(shí)現(xiàn)的呢,首先你要定義一個(gè)注解,然后通過反射來實(shí)現(xiàn)你所要的功能。
Java的元注解元注解就是注解的注解,聽起來比較拗口,說白了就是說明注解的一些屬性,比如當(dāng)前注解是作用在類還是局部變量、實(shí)例變量、方法,注解的生存期、能否被子類繼承、可否被文檔化等等。@Documented? 表明當(dāng)前注釋可以文檔化
@Inherited 注釋當(dāng)前的注解可以被元素的子類繼承
@Target 注解的使用范圍
1,CONSTRUCTOR 構(gòu)造器 2, FIELD 實(shí)例變量? 3,LOCAL_VARIABLE 局部變量 4,METHOD 方法 5,PACKAGE 包 6,PARAMETER 參數(shù)7,TYPE 類、接口或注解接口、枚舉enum.
@Resention 聲明注解的生命周期,1,源碼級(jí)2,編譯期3,運(yùn)行期
注解定義一個(gè)名為BindView的注解,使用@interface來聲明這是一個(gè)注解,所有的注解內(nèi)方法不能有參數(shù),其他的均和普通的接口寫法一致,可以定義默認(rèn)返回值也就是default n的形式,如果注解內(nèi)只有一個(gè)方法那么只能使用value作為方法名,這個(gè)注解方法可以通過反射來返回一個(gè)int類型的值,當(dāng)然這要我們自己去實(shí)現(xiàn)。
通過反射找到控件以上代碼有一些反射基礎(chǔ)的同學(xué)都可以看明白,而且的寫了注釋,最后是頁面中的代碼
Activity頁面在控件上面寫上注釋和它的ID值,在使用控件之前把上下文傳遞給FindViewByReflection這個(gè)類,讓它通過反射來遍歷所有用到了注釋的變量,然后為它們賦值,也就是在運(yùn)行過程中來findViewById()。
如有錯(cuò)誤或遺漏,歡迎留言指出
總結(jié)
以上是生活随笔為你收集整理的简述java在安卓开发中的应用_Java 自定义注解在安卓开发中的简单运用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【OpenCV 例程200篇】36. 直
- 下一篇: 【课题总结】OpenCV 抠图项目实战(