<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    夢幻之旅

    DEBUG - 天道酬勤

       :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      671 隨筆 :: 6 文章 :: 256 評論 :: 0 Trackbacks
    本練習有三個目標:
    1.如何定義注釋類型
    2.如何使用注釋類型
    3.如何讓注釋影響程序運行

    一.如何定義注釋類型
    package org.test.spring.annotation;

    import java.lang.annotation.ElementType;
    import java.lang.annotation.Retention;
    import java.lang.annotation.RetentionPolicy;
    import java.lang.annotation.Target;

    /**
     * <p>
     * 定義一個Person類專用的注釋
     * </p>
     * 元注釋Retention用于指定此注釋類型的注釋要保留多久, 元注釋Target用于指定此注釋類型的注釋適用的程序元素的種類,
     * 
     * 
    @author Huy Vanpon
     
    */
    @Retention(RetentionPolicy.RUNTIME)
    @Target(ElementType.METHOD)
    public @interface Annot4Person
    {
        String name() 
    default "惠萬鵬";
        
        
    int age() default 25;
        
        String gender() 
    default "";
    }


    二.2.如何使用注釋類型
    package org.test.spring.annotation;

    /**
     * <p>
     * 本類用于定義人類,包含一個自我介紹的方法
     * </p>
     * 
     * 
    @author Huy Vanpon
     
    */
    public class Person
    {
        @Annot4Person(name 
    = "何潔", gender = "", age = 16)
        
    public void introductionMyself(String name, String gender, int age)
        {
            StringBuffer sb 
    = new StringBuffer();
            sb.append(
    "嗨,大家好,我叫");
            sb.append(name);
            sb.append(
    ",今年");
            sb.append(age);
            sb.append(
    "歲,是一個充滿陽光的");
            sb.append(gender);
            sb.append(
    "孩.");
            System.out.println(sb.toString());
        }
    }


    三.如何讓注釋影響程序運行
    package org.test.spring.annotation;

    import java.lang.reflect.Method;

    /**
     * <p>
     * 本用利JAVA的反射機制,讓注釋影響程序的運行
     * </p>
     * 
     * 
    @author Huy Vanpon
     
    */
    public class AnnotDisturber
    {
        
    public void testAnnot4Person()
        {
            Class
    <Person> clazz = Person.class;
            
    try
            {
                
    //通過方法名和入參確定方法
                Method method = clazz.getDeclaredMethod("introductionMyself",
                        String.
    class, String.classint.class);
                
    if (method == null)
                {
                    
    return;
                }
                
    //從方法取得注釋
                Annot4Person annotation = method.getAnnotation(Annot4Person.class);
                
    if (annotation == null)
                {
                    
    return;
                }
                
    //調用這個方法
                method.invoke(new Person(), annotation.name(), annotation.gender(),
                        annotation.age());
            }
            
    catch (Exception e)
            {
                e.printStackTrace();
            }
        }
        
        
    public static void main(String[] args)
        {
            AnnotDisturber tt 
    = new AnnotDisturber();
            tt.testAnnot4Person();
        }
    }


    posted on 2008-07-25 11:48 HUIKK 閱讀(1127) 評論(0)  編輯  收藏 所屬分類: Spring
    主站蜘蛛池模板: 亚洲国产婷婷综合在线精品| 91视频国产免费| 亚洲精品A在线观看| 男女猛烈激情xx00免费视频| 国产色婷婷精品免费视频| 国产亚洲精品AAAA片APP| 手机看片久久国产免费| 亚洲精品中文字幕无码A片老| 成人无码区免费视频观看| 麻豆狠色伊人亚洲综合网站 | 亚洲精品无码国产| 国产福利在线观看永久免费| 国产成人精品日本亚洲专区 | 日韩在线视精品在亚洲| 亚洲A∨精品一区二区三区| 日韩一级片免费观看| 亚洲真人无码永久在线| 免费一级毛片在线播放视频| 亚洲精品国产福利片| 在线观看免费人成视频色| 亚洲av日韩精品久久久久久a| 全亚洲最新黄色特级网站| 巨胸狂喷奶水视频www网站免费| 亚洲啪啪AV无码片| 久久久久久毛片免费播放 | 久久久久亚洲AV成人片| 国产一卡2卡3卡4卡无卡免费视频 国产一卡二卡3卡四卡免费 | 亚洲AV永久无码精品放毛片| 免费一级国产生活片| 天堂在线免费观看| 亚洲视频一区二区三区| 天天干在线免费视频| 香蕉国产在线观看免费| 91亚洲国产成人久久精品网站| 成人免费福利电影| 一级特黄录像免费播放肥| 亚洲导航深夜福利| 亚洲国产成人久久综合野外| 久久国产色AV免费观看| 精品特级一级毛片免费观看| 老司机亚洲精品影院|