大白話でJavaSEについて話す--カスタム注釈入門
注釈はJavaSEの中で比較的に高級な1種の用法で、どうして注釈を学ぶのか、私は大体以下のいくつかの原因があると思います:
1.Javaをより深く学び、Javaの思想を理解することができる.
2.注釈の基礎ができ、hibernate、SpringMVCなど、さまざまなフレームワークのソースコードを簡単に読むことができます.中には大量の注釈が使われています.ソースコードが読めなくても、後でこれらのフレームワークを使うと、心理的な安心感があります.
[原句]これから他人に自慢話をするのが便利です.△もちろん、これも重要です.
さあ、あまり話さないで、始めましょう.
1.注釈の観点から注釈を理解する
長い間考えていましたが、最終的にこの小さなタイトルを第1節のタイトルにすることにしました.Javaコードを書くとき、私たちのコードを分かりやすく見せるために、注釈情報を加えます.
例えば、この方法の著者、役割、バージョンなどの情報をマークする方法を書きます.はい、プログラマーとして、優雅な注釈を書くことは非常に重要な良い習慣です.
例:
これは文字列判空の関数で、関数名はisEmptyで、名前を見てもたぶんその役割が推測できるのですが、注釈をつけると、一瞬でもっとはっきりしてくるのではないでしょうか.
この注釈は、コードが実行されると、実行メカニズムは自動的に無視されます.これらの文字は実行メカニズムではなく、プログラマに見られるからです.
注釈を書くのは美徳だ.
では、注釈は何でしょうか.
個人的には、注釈とは、パソコンに書く高度な注釈です.
コードの中に@XXXのロゴが出てくるのをよく見かけるかもしれませんが、一見深い感じがします.どうせ私はその時このような感じで、頭の中で最初の反応はこれがきっと難しいに違いない.
私はまだその言叶で、もしあなたがいつも复雑なことを考えているならば、それでは永远に简単さが见えません.
私たちが注釈を書くのは、人に見せるもので、注釈はパソコンに書くものです.簡単です.
ちょっと抽象的かもしれませんが、大丈夫です.素早く入門しましょう.
2.質問を出す
Javaプロジェクトの新規作成
プロジェクト名はAnnotationと呼びましょう
srcの横を右クリックしてutilパッケージ、すなわちツールパッケージを新規作成します.
日付を専門に扱うツールクラスを作る
日付のフォーマット方法を勝手に書きます.
注意、ガイドパッケージの場合javaです.util.Date;,javaではなくsql.Date;
テスト:
コンソール印刷:Wed Sep 21 19:24:57 CST 20162016-09-21 07:24:57
これは、私たちが書く方法が正しいはずだということを示しています.
では、次はどんな問題を解決しますか?つまり、この方法に関する情報をコードで取得したい場合は、どうすればいいのでしょうか.
注釈を書くのはきっとだめです.注釈はプログラマーが読んだので、パソコンが読めません.注釈の内容は言うまでもありません.
すると、注釈という高度な注釈が現れます.
3.注記の作成
注記については、次の3つの問題を明確にします.誰に注釈をつけますか? いつ注釈が役に立ちますか? それらを注釈しますか?
クイックエントリーなので、たぶんそれを知っていれば十分です.
今、私たちは新しい注釈を作成します.間違いなく、注釈とはJavaクラスです.驚かないでください.
注記パッケージを新規作成します.
new AnnotationはMethodNoteと呼ばれています.これは方法に加えられており、方法にパソコンで読める説明を加えるためです.
最初の問題は誰に注釈をつけるのですか?では、この注釈クラスはメソッドに追加する必要があるので、このように書きます.
これは,この注釈を方法に加えることを示す.
次に、2つ目の質問を明確にしましょう.いつ注釈が役に立つのでしょうか.
私たちはプログラムが実行されるときに、注釈が機能することを望んでいます.つまり、あなたのプログラムが走り出すと、コンピュータはこれらの注釈を読み始めます.
私のこの注釈は、プログラムが走り出したとき、RUNTIMEは、走り出したときに、機能したのです.
とてもいいです.では、最後の質問です.それらを注釈しますか.
最も重要な情報は、役割、作成時間、作成者、バージョン、戻り値などです.私たちは勝手にいくつか抽出して、作用と作成時間について話しましょう.
この書き方は、インタフェースを書く方法に似ています.
さあ、私たちの最初の注釈は書き終わりました!書き終わったらすぐに使いましょう.今、日付のフォーマット方法に自分で書いた注釈を加えます.
これが注釈というもので、実は簡単なのでしょう.このようにして、結局はJavaクラスです.
4.Java反射によるメソッドの注釈情報の取得
さて、本題に戻り、formatDateメソッドに注釈をつけました.では、この注釈がコンピュータに書かれている以上、コンピュータは他のJavaクラスでこれらの情報を得る方法があるのではないでしょうか.
どうやって手に入れるか、そうだ、反射メカニズムで.
上のコード:
結果:
方法の説明:作者は怠け者で、本を書く方法の役割がありません.作成日:2016-9-21
この章は終わります...
この章では、Javaカスタム注釈について簡単に説明します.
1.Javaをより深く学び、Javaの思想を理解することができる.
2.注釈の基礎ができ、hibernate、SpringMVCなど、さまざまなフレームワークのソースコードを簡単に読むことができます.中には大量の注釈が使われています.ソースコードが読めなくても、後でこれらのフレームワークを使うと、心理的な安心感があります.
[原句]これから他人に自慢話をするのが便利です.△もちろん、これも重要です.
さあ、あまり話さないで、始めましょう.
1.注釈の観点から注釈を理解する
長い間考えていましたが、最終的にこの小さなタイトルを第1節のタイトルにすることにしました.Javaコードを書くとき、私たちのコードを分かりやすく見せるために、注釈情報を加えます.
例えば、この方法の著者、役割、バージョンなどの情報をマークする方法を書きます.はい、プログラマーとして、優雅な注釈を書くことは非常に重要な良い習慣です.
例:
/**
*
* :isEmpty
* :
* :2016 9 21 - 6:56:33
* @param str
* @return boolean
*/
public static boolean isEmpty(String str) {
return null == str || str.equals("")
|| str.matches("\\s*");
}
これは文字列判空の関数で、関数名はisEmptyで、名前を見てもたぶんその役割が推測できるのですが、注釈をつけると、一瞬でもっとはっきりしてくるのではないでしょうか.
この注釈は、コードが実行されると、実行メカニズムは自動的に無視されます.これらの文字は実行メカニズムではなく、プログラマに見られるからです.
注釈を書くのは美徳だ.
では、注釈は何でしょうか.
個人的には、注釈とは、パソコンに書く高度な注釈です.
コードの中に@XXXのロゴが出てくるのをよく見かけるかもしれませんが、一見深い感じがします.どうせ私はその時このような感じで、頭の中で最初の反応はこれがきっと難しいに違いない.
私はまだその言叶で、もしあなたがいつも复雑なことを考えているならば、それでは永远に简単さが见えません.
私たちが注釈を書くのは、人に見せるもので、注釈はパソコンに書くものです.簡単です.
ちょっと抽象的かもしれませんが、大丈夫です.素早く入門しましょう.
2.質問を出す
Javaプロジェクトの新規作成
プロジェクト名はAnnotationと呼びましょう
srcの横を右クリックしてutilパッケージ、すなわちツールパッケージを新規作成します.
日付を専門に扱うツールクラスを作る
日付のフォーマット方法を勝手に書きます.
package util;
import java.util.Date;
import java.text.SimpleDateFormat;
public class DateUtil {
public static String formatDate( Date date , String formatPattern ){
return new SimpleDateFormat(formatPattern).format(date);
}
}
注意、ガイドパッケージの場合javaです.util.Date;,javaではなくsql.Date;
テスト:
Date now = new Date();//
System.out.println(now);
System.out.println(formatDate(now,"yyyy-MM-dd hh:mm:ss"));
コンソール印刷:Wed Sep 21 19:24:57 CST 20162016-09-21 07:24:57
これは、私たちが書く方法が正しいはずだということを示しています.
では、次はどんな問題を解決しますか?つまり、この方法に関する情報をコードで取得したい場合は、どうすればいいのでしょうか.
注釈を書くのはきっとだめです.注釈はプログラマーが読んだので、パソコンが読めません.注釈の内容は言うまでもありません.
すると、注釈という高度な注釈が現れます.
3.注記の作成
注記については、次の3つの問題を明確にします.
クイックエントリーなので、たぶんそれを知っていれば十分です.
今、私たちは新しい注釈を作成します.間違いなく、注釈とはJavaクラスです.驚かないでください.
注記パッケージを新規作成します.
new AnnotationはMethodNoteと呼ばれています.これは方法に加えられており、方法にパソコンで読める説明を加えるためです.
最初の問題は誰に注釈をつけるのですか?では、この注釈クラスはメソッドに追加する必要があるので、このように書きます.
これは,この注釈を方法に加えることを示す.
次に、2つ目の質問を明確にしましょう.いつ注釈が役に立つのでしょうか.
私たちはプログラムが実行されるときに、注釈が機能することを望んでいます.つまり、あなたのプログラムが走り出すと、コンピュータはこれらの注釈を読み始めます.
私のこの注釈は、プログラムが走り出したとき、RUNTIMEは、走り出したときに、機能したのです.
とてもいいです.では、最後の質問です.それらを注釈しますか.
最も重要な情報は、役割、作成時間、作成者、バージョン、戻り値などです.私たちは勝手にいくつか抽出して、作用と作成時間について話しましょう.
この書き方は、インタフェースを書く方法に似ています.
さあ、私たちの最初の注釈は書き終わりました!書き終わったらすぐに使いましょう.今、日付のフォーマット方法に自分で書いた注釈を加えます.
@MethodNote(createTime = "2016-9-21")
public static String formatDate(Date date , String formatPattern){
return new SimpleDateFormat(formatPattern).format(date);
}
これが注釈というもので、実は簡単なのでしょう.このようにして、結局はJavaクラスです.
4.Java反射によるメソッドの注釈情報の取得
さて、本題に戻り、formatDateメソッドに注釈をつけました.では、この注釈がコンピュータに書かれている以上、コンピュータは他のJavaクラスでこれらの情報を得る方法があるのではないでしょうか.
どうやって手に入れるか、そうだ、反射メカニズムで.
上のコード:
public static void main(String[] args) throws NoSuchMethodException, SecurityException {
Class classOfDateUtil = DateUtil.class;
Method formatDate = classOfDateUtil.getMethod("formatDate", Date.class,String.class);
MethodNote methodNote = formatDate.getAnnotation(MethodNote.class);
System.out.println(" :" + methodNote.description());
System.out.println(" :" + methodNote.createTime());
}
結果:
方法の説明:作者は怠け者で、本を書く方法の役割がありません.作成日:2016-9-21
この章は終わります...
この章では、Javaカスタム注釈について簡単に説明します.