第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

【自定義框架系列】【java.lang.annotation】自定義注解

標簽:
Java

搭建自己的框架,N步曲

引言

自己的杂文,写的不是很好,见谅。
本章讲解主题内容与自定义框架内容,从注解到xml定义,到常用功能。字符处理,数据内容处理,前台后台数据对接,json,文件上传下载,即时通信,等等,我能想到的东西,创建自己的框架。其中肯定有很多不完善,和现有的框架差距相当大的地方,所以请理解,这类文章只是为了提升java编程而设定,并不是为了与市面上成熟的框架做比拼。
文中很多东西都是现学的,不能说【我能】

正文

说注解,在java编程中,注解是非常常见的,无论是常见的@Override还是常说的各种框架提供的注解。或多或少的需要用到。今天我就去实现以下注解的过程。
java中的注解,定义一切注解的注解称之为【元注解】,可以理解为Object对象。
java中提供的元注解分别为
首先来说说两个重要元注解

@Target:目标注解。该注解表明该定义注解的使用范围

使用范围定义

  • ElementType.TYPE:接口、类、枚举、注解
  • ElementType.FIELD: 字段、Enum枚举常量
  • ElementType.METHOD :方法
  • ElementType.PARAMETER :方法参数【在mybatis中提供的`@param】
  • ElementType.COSTRUCTOR:构造方法【少见】
  • ElementType.LOCAL_VARIABLE局部变量【没用过暂时】
  • ElementType.ANNOTATION_TYPE注解【你没有看错,注解也是可以注解注解的。。】
  • ElementType.PACKAGE包 【这个貌似看到的很少哎】
    使用方法 @Target(ElementType.METHOD)

@Retention:保留政策。该注解定义java编译时的保留方式

保留方式种类

  • RetentionPolicy.SOURCE :仅存于源码中,编译[.class]时舍弃
  • RetentionPolicy.CLASS :编译于.class中,但是无法运行时使用
  • RetentionPolicy.RUNTIME : 编译于【.class】文件中,并且可以通过反射获取
    使用方法 @Retention(RetentionPolicy.RUNTIME)

    @Override 就属于源码注解,在编译class时就舍弃掉了。

其余两种,一种的定义为【javadoc】使用的@Documented,另一种就是定义可以被继承的 @Inherited 注解

现在开始定义一个注解

/**
 * 在java注解中 定义与书写class类似,使用【@interface】 表示定义当前对象为注解
 * 对象在注解对象中,只需要声明注解对象内容,不需要注解具体实现
 * 下方示例:定义注解用于方法,并且在运行时可以被获取到
 */
@Target(ElementType.METHOD)//该注解将用于方法
@Retention(RetentionPolicy.RUNTIME)//在运行时起作用
@Inherited//可以被继承
public @interface Role{
        /*
         * 定义注解的一个元素【或者称之为方法】,该元素用来接受注解的值
         *  String role()  default "defValue";  指派当前的元素的默认值
         */
    String role();

}

使用方法

public class AnnotationTest{
    @Role(role="myRole")//这里是使用刚刚定义的注解
    public void testMethod(){
        //TODO 这里是方法体
    }
}

以上就是注解的定义全过程,附录注解图一张

注解字谱

點擊查看更多內(nèi)容
5人點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優(yōu)質(zhì)文章

正在加載中
感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學(xué)

大額優(yōu)惠券免費領(lǐng)

立即參與 放棄機會
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號

舉報

0/150
提交
取消