註解到底是幹什麼的?

2021-10-07 11:43:35 字數 1300 閱讀 9524

說起註解,我們都用過注釋:用文字描述程式的.給程式設計師看的。那麼註解和注釋相似。下面看一下註解的介紹

定義:註解(annotation),也叫元資料。一種**級別的說明。它是jdk1.5及以後版本引入的乙個特性,與類、介面、列舉是在同乙個層次。它可以宣告在包、類、字段、方法、區域性變數、方法引數等的前面,用來對這些元素進行說明,注釋。

概念描述:

jdk1.5之後的新特性

說明程式的

使用註解:@註解名稱

①編寫文件:通過**裡標識的註解生成文件【生成文件doc文件】

②**分析:通過**裡標識的註解對**進行分析【使用反射】

③編譯檢查:通過**裡標識的註解讓編譯器能夠實現基本的編譯檢查【override】

@override:檢測被該註解標註的方法是否是繼承自父類(介面)的

@deprecated: 將該註解標註的內容,已過時

@suppresswarnings:壓制警告

一般傳遞引數all @suppresswarnings(all)

格式:public @inte***ce 註解名稱

屬性:介面中的抽象方法

要求:4.2 屬性的返回值型別

基本資料型別

string

列舉註解

以上型別的陣列

4.3定義了屬性,在使用時需要給屬性賦值

1.如果定義屬性時,使用default關鍵字給屬性預設初始值,則使用註解時,可以不進行屬性的賦值。

2.如果只有乙個屬性需要賦值,並且屬性的名稱是value,則value可以省略,直接定義值即可

3.陣列賦值時,值使用{}包裹,如果陣列中只有乙個值,則{}可以省略不寫。

@target:描述註解能夠作用的位置

elementtype取值:

type:可以作用於類上、

method:可以作用於方法上

field:可以作用於成員變數上

@retention:描述註解被保留的階段

@retention(retentionpolicy.runtime):當前被描述的註解,會保留到class位元組碼檔案中,並被jvm讀取到

@documented:描述註解是否被抽取到api文件中

@inherited:描述註解是否被子類繼承

在程式中使用(解析)註解:獲取註解中定義 的屬性值

1.獲取註解定義位置的物件(class,method,field)

2.獲取指定的註解

getannotation(class)

3.呼叫註解中的抽象方法獲取配置的屬性值

XML到底是幹什麼的

xml本身是一種格式規範,是一種包含了資料以及資料說明的文字格式規範。比如,我們要給對方傳輸一段資料,資料內容是 too young,too sometimes 要將這段話按照屬性拆分為三個資料的話,就是,年齡too young,閱歷too 結果sometimes 我們都知道程式不像人,可以體會字面...

JS 的 new 到底是幹什麼的?

大部分講 new 的文章會從物件導向的思路講起,但是我始終認為,在解釋乙個事物的時候,不應該引入另乙個更複雜的事物。今天我從 省 的角度來講 new。想象我們在製作乙個策略類戰爭遊戲,玩家可以操作一堆士兵攻擊敵方。我們著重來研究一下這個遊戲裡面的 製造士兵 環節。乙個士兵的在計算機裡就是一堆屬性,如...

編譯到底是在幹什麼

寫c 都知道,寫完程式要編譯才能形成可執行檔案,那麼,編譯到底是在幹一件什麼樣的事呢?編譯的例子 寫乙個簡單的helloworld.cpp程式 include using namespace std intmain 然後執行g 進行編譯並執行 root vm 238 167 centos g o h...