当前位置: 首页 > news >正文

上海市奉贤区建设局网站网站推广宣传语

上海市奉贤区建设局网站,网站推广宣传语,提供邢台做wap网站,wordpress付费主题3.注解 3.1概述【理解】 概述 对我们的程序进行标注和解释 注解和注释的区别 注释: 给程序员看的注解: 给编译器看的 使用注解进行配置配置的优势 代码更加简洁,方便 3.2自定义注解【理解】 格式 public interface 注解名称 { ​ public 属性类型 属性名() default 默认值…

3.注解

3.1概述【理解】

  • 概述

    对我们的程序进行标注和解释

  • 注解和注释的区别

    • 注释: 给程序员看的
    • 注解: 给编译器看的
  • 使用注解进行配置配置的优势

    代码更加简洁,方便

3.2自定义注解【理解】

  • 格式

    public @interface 注解名称 {

    ​ public 属性类型 属性名() default 默认值 ;

    }

  • 属性类型

    • 基本数据类型
    • String
    • Class
    • 注解
    • 枚举
    • 以上类型的一维数组
  • 代码演示

    public @interface Anno2 {
    }public enum Season {SPRING,SUMMER,AUTUMN,WINTER;
    }public @interface Anno1 {//定义一个基本类型的属性int a () default 23;//定义一个String类型的属性public String name() default "itheima";//定义一个Class类型的属性public Class clazz() default Anno2.class;//定义一个注解类型的属性public Anno2 anno() default @Anno2;//定义一个枚举类型的属性public Season season() default Season.SPRING;//以上类型的一维数组//int数组public int[] arr() default {1,2,3,4,5};//枚举数组public Season[] seasons() default {Season.SPRING,Season.SUMMER};//value。后期我们在使用注解的时候,如果我们只需要给注解的value属性赋值。//那么value就可以省略public String value();}//在使用注解的时候如果注解里面的属性没有指定默认值。
    //那么我们就需要手动给出注解属性的设置值。
    //@Anno1(name = "itheima")
    @Anno1("abc")
    public class AnnoDemo {
    }
    
  • 注意

    如果只有一个属性需要赋值,并且属性的名称是value,则value可以省略,直接定义值即可

  • 自定义注解案例

    • 需求

      自定义一个注解@Test,用于指定类的方法上,如果某一个类的方法上使用了该注解,就执行该方法

    • 实现步骤

      1. 自定义一个注解Test,并在类中的某几个方法上加上注解
      2. 在测试类中,获取注解所在的类的Class对象
      3. 获取类中所有的方法对象
      4. 遍历每一个方法对象,判断是否有对应的注解
    • 代码实现

      //表示Test这个注解的存活时间
      @Retention(value = RetentionPolicy.RUNTIME)
      public @interface Test {
      }public class UseTest {//没有使用Test注解public void show(){System.out.println("UseTest....show....");}//使用Test注解@Testpublic void method(){System.out.println("UseTest....method....");}//没有使用Test注解@Testpublic void function(){System.out.println("UseTest....function....");}
      }public class AnnoDemo {public static void main(String[] args) throws ClassNotFoundException, IllegalAccessException, InstantiationException, InvocationTargetException {//1.通过反射获取UseTest类的字节码文件对象Class clazz = Class.forName("com.itheima.myanno3.UseTest");//创建对象UseTest useTest = (UseTest) clazz.newInstance();//2.通过反射获取这个类里面所有的方法对象Method[] methods = clazz.getDeclaredMethods();//3.遍历数组,得到每一个方法对象for (Method method : methods) {//method依次表示每一个方法对象。//isAnnotationPresent(Class<? extends Annotation> annotationClass)//判断当前方法上是否有指定的注解。//参数:注解的字节码文件对象//返回值:布尔结果。  true 存在  false 不存在if(method.isAnnotationPresent(Test.class)){method.invoke(useTest);}}}
      }
      

3.3元注解【理解】

  • 概述

    元注解就是描述注解的注解

  • 元注解介绍

    元注解名说明
    @Target指定了注解能在哪里使用
    @Retention可以理解为保留时间(生命周期)
    @Inherited表示修饰的自定义注解可以被子类继承
    @Documented表示该自定义注解,会出现在API文档里面。
  • 示例代码

    @Target({ElementType.FIELD,ElementType.TYPE,ElementType.METHOD})  //指定注解使用的位置(成员变量,类,方法)
    @Retention(RetentionPolicy.RUNTIME) //指定该注解的存活时间
    //@Inherited //指定该注解可以被继承
    public @interface Anno {
    }@Anno
    public class Person {
    }public class Student extends Person {public void show(){System.out.println("student.......show..........");}
    }public class StudentDemo {public static void main(String[] args) throws ClassNotFoundException {//获取到Student类的字节码文件对象Class clazz = Class.forName("com.itheima.myanno4.Student");//获取注解。boolean result = clazz.isAnnotationPresent(Anno.class);System.out.println(result);}
    }
http://www.15wanjia.com/news/16140.html

相关文章:

  • 怎样做推广网站郑州做网站推广资讯
  • 昭通做网站百度推广客服中心
  • 自媒体是干什么的自助优化排名工具
  • 长沙诚信做网站全球新闻最新消息
  • 那家公司做网站比较好西安疫情最新情况
  • 怎么在vps上做网站培训班有哪些课程
  • 科室网站建设上海网站排名优化
  • 做外贸的网站开店流程seo案例视频教程
  • 西安做网站的公司维护网站源码下载
  • 开封做网站国内广告联盟平台
  • 如何用ftp上传文件到网站抖音关键词挖掘工具
  • 加盟编程教育哪家好qq群排名优化软件购买
  • 汕头集团做网站方案百度投诉中心入口
  • wordpress登录密码忘记谷歌搜索广告优化
  • 网站设计公司业务怎么做软文营销代理
  • 微信公众号可以自动导入wordpress网站seo优化课程
  • 宁夏手机网站建设seo指的是搜索引擎
  • 武汉前端网站开发公司艾滋病多久能检查出来
  • 免费制作表格的app贵州整站优化seo平台
  • 做兼职的国外网站富阳网站seo价格
  • 快速做网站套餐合肥今日头条最新消息
  • 免费域名网址seo研究中心教程
  • 屯昌网站建设福州seo服务
  • 电商网站开发常用代码企业网站优化解决方案
  • 福建做网站的公司内容营销成功案例
  • 游戏网站平台怎么做360网站推广登录
  • 书店网站html模板seo服务外包公司
  • seo网站有哪些小学生收集的新闻10条
  • 做恶搞网站软件下载广州网络推广专员
  • jsp网站开发可行性分析小说风云榜