精华内容
下载资源
问答
  • 源码地址:https://github.com/yylxy/JavaAnnotationTest.gitjava Annotation 注解的使用 ,代码中有详细的注释。是用AndroidStudio写的/*** 说明:注解创建类* 作者: 杨阳; 创建于: 2017-06-02 16:10*/@Retention...

    源码地址:https://github.com/yylxy/JavaAnnotationTest.git

    java Annotation 注解的使用 ,代码中有详细的注释。是用AndroidStudio写的

    b09d47675c99b191f51c42cb8b82d2f6.png

    5b6c1590646b23f767609accce0a7356.png

    49e590f19c062b85543a81527f14cfba.png

    /**

    * 说明:注解创建类

    * 作者: 杨阳; 创建于: 2017-06-02 16:10

    */

    @Retention(RetentionPolicy.RUNTIME)//定义注释的生命周期

    @Target({ElementType.METHOD, ElementType.TYPE})//注释的类型,类型是支持方法与类。

    public @interface MyAnnotation {

    String color() default "blue";//设置的默认值

    String value();

    int[] array() default {1, 2, 3,};//返回数组类型

    EnumTest enum1() default EnumTest.NAME1;//返回枚举

    OtherAnnotation otherAnnotation() default @OtherAnnotation("hhhhhHHHH");//返回注解

    }

    /**

    * 说明:注解使用类

    * 作者: 杨阳; 创建于: 2017-06-02 16:13

    */

    @MyAnnotation(otherAnnotation = @OtherAnnotation("RRRRRRRR"), color = "red", value = "132",array = {4,5,6,7,8},enum1 = EnumTest.NAME2)

    public class AnnotationTest {

    @Deprecated

    @MyAnnotation("456")

    public void getString() {

    System.out.println("1111111");

    }

    }

    /**

    * 说明:注解的反射使用类

    * 作者: 杨阳; 创建于: 2017-06-02 16:14

    */

    public class MyClass {

    public static void main(String[] arg) {

    AnnotationTest at = new AnnotationTest();

    at.getString();

    //判断注解

    if (AnnotationTest.class.isAnnotationPresent(MyAnnotation.class)) {

    //得到注解

    MyAnnotation myAnnotation = AnnotationTest.class.getAnnotation(MyAnnotation.class);

    //输出注解

    System.out.println(myAnnotation.color() + "\t\t" + myAnnotation.value());

    System.out.println(myAnnotation.array().length + "\t\t" + myAnnotation.toString());

    System.out.println(myAnnotation.enum1().name);

    System.out.println(myAnnotation.otherAnnotation().value());

    }

    }

    }

    /**

    * 说明:注解创建类

    * 作者: 杨阳; 创建于: 2017-06-02 17:08

    */

    @Retention(RetentionPolicy.RUNTIME)//定义注释的生命周期

    @Target({ElementType.METHOD, ElementType.TYPE})//注释的类型,类型是支持方法与类。

    public @interface OtherAnnotation {

    String value() default "yyyyy";

    }

    /**

    * 说明:枚举测试

    * 作者: 杨阳; 创建于: 2017-06-02 17:31

    */

    public enum EnumTest {

    NAME1("aaaaa"),NAME2("bbbbb");

    String name;

    EnumTest(String name) {

    this.name = name;

    }

    }

    展开全文
  • 要深入学习注解,我们就必须能定义自己的注解,并使用注解,在定义自己的注解之前,我们就必须要了解Java为我们提供的元注解和相关定义注解的语法。元注解:元注解的作用就是负责注解其他注解Java5.0定义了4个标准...

    要深入学习注解,我们就必须能定义自己的注解,并使用注解,在定义自己的注解之前,我们就必须要了解Java为我们提供的元注解和相关定义注解的语法。

    元注解:

    元注解的作用就是负责注解其他注解。Java5.0定义了4个标准的meta-annotation类型,它们被用来提供对其它 annotation类型作说明。Java5.0定义的元注解:

    1.@Target,

    2.@Retention,

    3.@Documented,

    4.@Inherited

    这些类型和它们所支持的类在java.lang.annotation包中可以找到。下面我们看一下每个元注解的作用和相应分参数的使用说明。

    @Target:

    @Target说明了Annotation所修饰的对象范围:Annotation可被用于 packages、types(类、接口、枚举、Annotation类型)、类型成员(方法、构造方法、成员变量、枚举值)、方法参数和本地变量(如循环变量、catch参数)。在Annotation类型的声明中使用了target可更加明晰其修饰的目标。

    作用:用于描述注解的使用范围(即:被描述的注解可以用在什么地方)

    取值(ElementType)有:

    1.CONSTRUCTOR:用于描述构造器

    2.FIELD:用于描述域

    3.LOCAL_VARIABLE:用于描述局部变量

    4.METHOD:用于描述方法

    5.PACKAGE:用于描述包

    6.PARAMETER:用于描述参数

    7.TYPE:用于描述类、接口(包括注解类型) 或enum声明

    使用实例:

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    @Target(ElementType.TYPE)

    public @interface Table {

    /**

    * 数据表名称注解,默认值为类名称

    * @return

    */

    public String tableName() default "className";

    }

    @Target(ElementType.FIELD)

    public @interface NoDBColumn {

    }

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    注解Table 可以用于注解类、接口(包括注解类型) 或enum声明,而注解NoDBColumn仅可用于注解类的成员变量。

    @Retention:

    @Retention定义了该Annotation被保留的时间长短:某些Annotation仅出现在源代码中,而被编译器丢弃;而另一些却被编译在class文件中;编译在class文件中的Annotation可能会被虚拟机忽略,而另一些在class被装载时将被读取(请注意并不影响class的执行,因为Annotation与class在使用上是被分离的)。使用这个meta-Annotation可以对 Annotation的“生命周期”限制。

    作用:表示需要在什么级别保存该注释信息,用于描述注解的生命周期(即:被描述的注解在什么范围内有效)

    取值(RetentionPoicy)有:

    1.SOURCE:在源文件中有效(即源文件保留)

    2.CLASS:在class文件中有效(即class保留)

    3.RUNTIME:在运行时有效(即运行时保留)

    Retention meta-annotation类型有唯一的value作为成员,它的取值来自java.lang.annotation.RetentionPolicy的枚举类型值。具体实例如下:

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    @Target(ElementType.FIELD)

    @Retention(RetentionPolicy.RUNTIME)

    public @interface Column {

    public String name() default "fieldName";

    public String setFuncName() default "setField";

    public String getFuncName() default "getField";

    public boolean defaultDBValue() default false;

    }

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    Column注解的的RetentionPolicy的属性值是RUTIME,这样注解处理器可以通过反射,获取到该注解的属性值,从而去做一些运行时的逻辑处理

    @Documented:

    @Documented用于描述其它类型的annotation应该被作为被标注的程序成员的公共API,因此可以被例如javadoc此类的工具文档化。Documented是一个标记注解,没有成员。

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    @Target(ElementType.FIELD)

    @Retention(RetentionPolicy.RUNTIME)

    @Documented

    public @interface Column {

    public String name() default "fieldName";

    public String setFuncName() default "setField";

    public String getFuncName() default "getField";

    public boolean defaultDBValue() default false;

    }

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    @Inherited:

    @Inherited 元注解是一个标记注解,@Inherited阐述了某个被标注的类型是被继承的。如果一个使用了@Inherited修饰的annotation类型被用于一个class,则这个annotation将被用于该class的子类。

    注意:@Inherited annotation类型是被标注过的class的子类所继承。类并不从它所实现的接口继承annotation,方法并不从它所重载的方法继承annotation。

    当@Inherited annotation类型标注的annotation的Retention是RetentionPolicy.RUNTIME,则反射API增强了这种继承性。如果我们使用java.lang.reflect去查询一个@Inherited annotation类型的annotation时,反射代码检查将展开工作:检查class和其父类,直到发现指定的annotation类型被发现,或者到达类继承结构的顶层。

    实例代码:

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    /**

    *

    * @author peida

    *

    */

    @Inherited

    public @interface Greeting {

    public enum FontColor{ BULE,RED,GREEN};

    String name();

    FontColor fontColor() default FontColor.GREEN;

    }

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    自定义注解:

    使用@interface自定义注解时,自动继承了java.lang.annotation.Annotation接口,由编译程序自动完成其他细节。在定义注解时,不能继承其他的注解或接口。@interface用来声明一个注解,其中的每一个方法实际上是声明了一个配置参数。方法的名称就是参数的名称,返回值类型就是参数的类型(返回值类型只能是基本类型、Class、String、enum)。可以通过default来声明参数的默认值。

    定义注解格式:

    public @interface 注解名 {定义体}

    注解参数的可支持数据类型:

    1.所有基本数据类型(int,float,boolean,byte,double,char,long,short)

    2.String类型

    3.Class类型

    4.enum类型

    5.Annotation类型

    6.以上所有类型的数组

    Annotation类型里面的参数该怎么设定:

    第一,只能用public或默认(default)这两个访问权修饰.例如,String value();这里把方法设为defaul默认类型;

    第二,参数成员只能用基本类型byte,short,char,int,long,float,double,boolean八种基本数据类型和 String,Enum,Class,annotations等数据类型,以及这一些类型的数组.例如,String value();这里的参数成员就为String;

    第三,如果只有一个参数成员,最好把参数名称设为"value",后加小括号.例:下面的例子FruitName注解就只有一个参数成员。

    简单的自定义注解和使用注解实例:

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    package annotation;

    import java.lang.annotation.Documented;

    import java.lang.annotation.ElementType;

    import java.lang.annotation.Retention;

    import java.lang.annotation.RetentionPolicy;

    import java.lang.annotation.Target;

    /**

    * 水果名称注解

    * @author peida

    *

    */

    @Target(ElementType.FIELD)

    @Retention(RetentionPolicy.RUNTIME)

    @Documented

    public @interface FruitName {

    String value() default "";

    }

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    package annotation;

    import java.lang.annotation.Documented;

    import java.lang.annotation.ElementType;

    import java.lang.annotation.Retention;

    import java.lang.annotation.RetentionPolicy;

    import java.lang.annotation.Target;

    /**

    * 水果颜色注解

    * @author peida

    *

    */

    @Target(ElementType.FIELD)

    @Retention(RetentionPolicy.RUNTIME)

    @Documented

    public @interface FruitColor {

    /**

    * 颜色枚举

    * @author peida

    *

    */

    public enum Color{ BULE,RED,GREEN};

    /**

    * 颜色属性

    * @return

    */

    Color fruitColor() default Color.GREEN;

    }

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    package annotation;

    import annotation.FruitColor.Color;

    public class Apple {

    @FruitName("Apple")

    private String appleName;

    @FruitColor(fruitColor=Color.RED)

    private String appleColor;

    public void setAppleColor(String appleColor) {

    this.appleColor = appleColor;

    }

    public String getAppleColor() {

    return appleColor;

    }

    public void setAppleName(String appleName) {

    this.appleName = appleName;

    }

    public String getAppleName() {

    return appleName;

    }

    public void displayName(){

    System.out.println("水果的名字是:苹果");

    }

    }

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    注解元素的默认值:

    注解元素必须有确定的值,要么在定义注解的默认值中指定,要么在使用注解时指定,非基本类型的注解元素的值不可为null。因此, 使用空字符串或0作为默认值是一种常用的做法。这个约束使得处理器很难表现一个元素的存在或缺失的状态,因为每个注解的声明中,所有元素都存在,并且都具有相应的值,为了绕开这个约束,我们只能定义一些特殊的值,例如空字符串或者负数,一次表示某个元素不存在,在定义注解时,这已经成为一个习惯用法。例如:

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    1 package annotation;

    2

    3 import java.lang.annotation.Documented;

    4 import java.lang.annotation.ElementType;

    5 import java.lang.annotation.Retention;

    6 import java.lang.annotation.RetentionPolicy;

    7 import java.lang.annotation.Target;

    8

    9 /**

    10 * 水果供应者注解

    11 * @author peida

    12 *

    13 */

    14 @Target(ElementType.FIELD)

    15 @Retention(RetentionPolicy.RUNTIME)

    16 @Documented

    17 public @interface FruitProvider {

    18 /**

    19 * 供应商编号

    20 * @return

    21 */

    22 public int id() default -1;

    23

    24 /**

    25 * 供应商名称

    26 * @return

    27 */

    28 public String name() default "";

    29

    30 /**

    31 * 供应商地址

    32 * @return

    33 */

    34 public String address() default "";

    35 }

    48304ba5e6f9fe08f3fa1abda7d326ab.png

    定义了注解,并在需要的时候给相关类,类属性加上注解信息,如果没有响应的注解信息处理流程,注解可以说是没有实用价值。如何让注解真真的发挥作用,主要就在于注解处理方法,下一步我们将学习注解信息的获取和处理!

    展开全文
  • Java数组练习

    2021-04-09 16:35:14
    Java数组练习 文章目录Java数组练习1.打印数组2.求数组的平均值3.奇数位于偶数之前4.冒泡排序5.数组是否有序6.二分查找7.数组的拷贝8.数组转字符串 下面是关于数组的一些练习,程序中有题目要求以及对于解题的一...

    Java数组练习

    下面是关于数组的一些练习,程序中有题目要求以及对于解题的一部分注解

    1.打印数组

    public class Text4 {
        public static void main(String[] args) {
            int[] arr = {1,2,3,4,5,6,7,};
            printArray(arr);
        }
     
        public static void printArray(int[] array) {
            for (int a:array) {//使用for-each循环输出数组
                System.out.print(a + " ");
            }
        }
    }
    

    在这里插入图片描述

    2.求数组的平均值

    public class Text1 {//实现一个方法 avg, 以数组为参数, 求数组中所有元素的平均值(注意方法的返回值类型).
        public static void main(String[] args) {
            int[] array = new int[]{1,2,3,4,5,6,7,8};
            System.out.println(avg(array));
        }
        public static double avg(int[] arr){
        //将数组中每个值求和,最后除以数组长度即可
            double sum = 0;
            for (int i = 0; i <arr.length ; i++) {
                sum += arr[i];
            }
            return sum/arr.length;
        }
    }
    

    在这里插入图片描述

    3.奇数位于偶数之前

    public class Text1 {//调整数组顺序使得奇数位于偶数之前。调整之后,不关心大小顺序。
        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            System.out.println("请输入你这组数据的长度:");
            int a = sc.nextInt();
            System.out.println("请分别输入你的这组数据:");
            int[] arr = new int[a];
            for (int i = 0; i < arr.length; i++) {
                arr[i] = sc.nextInt();
            }
            System.out.println("你输入的这组数据是" + Arrays.toString(arr));
            sort(arr);
            System.out.println("--------------------------");
            System.out.println("排序后的数据为" +Arrays.toString(arr));
        }
        public static void sort(int[] arr){
            int left =0;
            int right = arr.length-1;
            while (left <= right){//外层循环,如果left大于right说明数组已经遍历了
                while (arr[left]%2 != 0){//从左开始,若是奇数往后移一位
                    left++;
                }
                while (arr[right]%2 == 0){//从右开始,若是偶数往前移一位
                    right--;
                }
                if (left>right) {//如果left已经大于right说明已经排好序,就直接跳出循环即可
                    break;
                }
                //若左右都已移完,走到这一步说明左边是偶数右边是奇数,把数据进行交换即可
                int tmp = arr[left];
                arr[left] = arr[right];
                arr[right] = tmp;
                }
            }
        }
    }
    

    在这里插入图片描述

    4.冒泡排序

    import java.util.Arrays;
    public class Text8 { //给定一个整型数组, 实现冒泡排序(升序排序)
        public static void main(String[] args) {
            int[] array = {2, 4, 1, 8, 5, 3, 6};
            System.out.println("排序前" + Arrays.toString(array));
            bubble(array);
            System.out.println("---------------------------");
            System.out.println("冒泡排序后" + Arrays.toString(array));
        }
     
        public static void bubble(int arr[]) {
        //每次都把最大的数排到最后一位
            for (int i = 0; i < arr.length - 1; i++) {//外层控制排序次数
                int k = 1;//定义一个观察数字是否进行交换的变量
                for (int j = 0; j < arr.length - i; j++) {
                //内存控制每次排序需要比较那些数,每次比较次数都比上一次少1
                    if (arr[i] > arr[i + 1]) {
                        int tmp = arr[i];
                        arr[i] = arr[i + 1];
                        arr[i + 1] = tmp;
                        k = -1;//若交换了,将变量值修改为-1
                    }
                }
                //若某次内存循环结束k的值没变,说明以及排序完成,一次交换都没发生
                if (k == 1) {
                    break;
                }
            }
        }
    }
    

    在这里插入图片描述

    5.数组是否有序

    import java.util.Arrays;
    public class Text8 {//给定一个整型数组, 判定数组是否有序(递增)
        public static void main(String[] args) {
            int[] array1 = {1,2,3,4,6,5};
            int[] array2 = {1,2,3,4,5,6};
            System.out.println("array1数组 " + jud(array1));
            System.out.println("array2数组 " + jud(array2));
        }
        public static String jud(int[] arr){
            for (int i = 0; i < arr.length-1; i++) {
                if (arr[i] > arr[i+1]){//循环判断数组每一个数是否小于他的下一位
                    return "无序";
                }
            }
            return "有序";
        }
    }
    

    在这里插入图片描述

    6.二分查找

    public class Text9 { //给定一个有序整型数组, 实现二分查找
        public static void main(String[] args) {
            int[] arr = {1,2,3,4,5};
            int n = 3;
            int ret =find(arr,n);
            if(ret == -1){//若返回值为-1说明没找到
                System.out.println("该数组中没有" + n);
            }else{
                System.out.println("该数组中的"+n+"在第"+ret+"位");
            }
        }
        public static int find(int[] arr,int n){
            int i = 0;//定义i从数组最前边开始
            int j = arr.length-1;//j从数组最后边开始
            while (i < j){//
                int m = (i+j)/2;//m为每次查找的中间点
                if(arr[m] > n){//若m位置的数大于要找数字,说明该数字在m位置和j位置之间
                    i = m+1;//i和m之间的数已经没意义,让i走到m+1的位置,再进行查找
                }else if(arr[m] < n){//在i和m之间
                    j = m-1;//j前往m-1的位置
                }else {//m位置的数为n,说明找到了,返回位置m
                    return m;
                }
            }
            return -1;//没找到返回-1
        }
    }
    

    在这里插入图片描述

    7.数组的拷贝

    import java.util.Arrays;
    public class Text10 {//实现一个方法 copyOf, 对一个整型数组进行拷贝, 得到一个新的数组.
        public static void main(String[] args) {
            int[] arr = {1,2,3,4,5,6};
            System.out.println("原数组是"+ Arrays.toString(arr));
            System.out.println("------------------------");
            System.out.println("拷贝的数组是" +Arrays.toString(copyOf(arr)));
        }
        public static int[] copyOf(int[] arr){//创建一个新数组将原数组数据全部拷贝一遍
            int[] a = new int[arr.length];
            for (int i = 0; i < arr.length; i++) {
                a[i] = arr[i];
            }
            return a;
        }
    }
    

    在这里插入图片描述

    8.数组转字符串

    public class Text11 {//实现一个方法 toString, 把一个整型数组转换成字符串. 例如数组 {1, 2, 3} , 返回的字符串为 "[1, 2, 3]", 注意 逗号 的位置和数量.
        public static void main(String[] args) {
            int[] array = {1,2,3,4,5};
            System.out.println(toString(array));
            int[] arr = null;
        }
        public static String toString(int[] arr) {
            if (arr == null) {//数组为null直接返回null
                return null;
            }
            String ret = "[";//使用ret遍历储存数组的每一位
            for (int i = 0; i < arr.length; i++) {//使用for循环遍历数组
                if (i == arr.length - 1) {//若是最后一位需加一个“]”,不用加“,”
                    ret += arr[i] + "]";
                }else {//每一位后加上“,”
                    ret += arr[i] + ",";
                }
            }
            return ret;//返回该字符串
        }
    }
    

    在这里插入图片描述

    展开全文
  • 本篇文章帮大家学习java注解默认值,包含了Java注解默认值使用方法、操作技巧、实例演示和注意事项,有一定的学习价值,大家可以用来参考。可以为注解中的元素定义默认值。不需要为带有默认值的注解元素提供值。...

    本篇文章帮大家学习java注解默认值,包含了Java注解默认值使用方法、操作技巧、实例演示和注意事项,有一定的学习价值,大家可以用来参考。

    可以为注解中的元素定义默认值。不需要为带有默认值的注解元素提供值。默认值可以使用以下一般语法定义:

    @interface {

    () default ;

    }

    关键字default指定默认值。默认值必须是与元素的数据类型兼容的类型。以下代码通过将minor元素的默认值指定为0,来创建Version注释类型,如下所示:

    public @interface Version {

    int major();

    int minor() default 0; // zero as default value for minor

    }

    示例

    以下代码显示注解如何使用默认值。

    @Version(major=1) // minor is zero, which is its default value

    @Version(major=2, minor=1) // minor is 1, which is the specified value

    以下代码显示如何为数组和其他数据类型指定默认值:

    public @interface Version {

    double d() default 1.89;

    int num() default 1;

    int[] x() default { 1, 2 };

    String s() default "Hello";

    String[] s2() default { "abc", "xyz" };

    Class c() default Exception.class;

    Class[] c2() default { Exception.class, java.io.IOException.class };

    }

    展开全文
  • Java注解用法注解元素的提供值必须是编译时常量表达式,不能使用null作为注解中任何类型元素的值。基本类型注解类型中的元素的数据类型可以是任何基本数据类型:byte,short,int,long,float,double,boolean 和 ...
  • 转载地址:http://www.cnblogs.com/peida/archive/2013/04/24/3036689.html要深入学习注解,我们就必须能定义自己的注解,并使用注解,在定义自己的注解之前,我们就必须要了解Java为我们提供的元注解和相关定义注解...
  • 一、元注解1、元注解概述元注解:用于描述注解注解2、常用的元注解(1)@Target:描述注解能够作用的位置Target 里面是一个 ElementType[] value() 的枚举数组,这个数组里面指定了10个常量对象。源码:1 public ...
  • 深入理解注解1、基本介绍2 内置注解2.1@Deprecated注解2.2@Override注解2.3@SuppressWarnings注解3、元注解简介3.1@Target3.2@Rentention3.3@Documented3.4@Inherited4、自定义注解5、获取注解中的参数值5.1参数值是...
  • 本来打算温习一下注解方面的内容作为今天的推送,但是来不及写了,那就一起来看一下数组数组是用来存放一组具有相同类型数据的数据结构,通过下标来访问数组中的元素。数组的定义数组的定义主要有两种,一种是先...
  • 本章小结了Java数组的基本语法,分享给新学习的小伙伴,分享获取新知大家一起进步。 文章目录一.引言二.数组三.数组的使用四.数组的内存分配 一.引言 回顾数据类型: (1)基本类型 byte short int long float ...
  • package ...import java.lang.annotation.ElementType;import java.lang.annotation.Retention;import java.lang.annotation.RetentionPolicy;import java.lang.annotation.Target;/*** Crea...
  • 一,自定义注解类@Target({ElementType.METHOD,ElementType.TYPE})@Retention(RetentionPolicy.RUNTIME)@Inherited //继承对接口是无用的;继承的时候只会集成到类上面的注解,不会继承到方法上的注解@...
  • 深入理解Java注解注解入门要深入学习注解,我们就必须能定义自己的注解,并使用注解,在定义自己的注解之前,我们就必须要了解Java为我们提供的元注解和相关定义注解的语法。Java提供的元注解Java5.0定义了4个...
  • 本来打算温习一下注解方面的内容作为今天的推送,但是来不及写了,那就一起来看一下数组数组是用来存放一组具有相同类型数据的数据结构,通过下标来访问数组中的元素。数组的定义数组的定义主要有两种,一种是先...
  • java中常见的注解@Override:作用在方法上的注解。当方法不是重写父类的方法时会报错;(这个注解可以帮我们检查覆盖是否正确。覆盖时推荐必须使用这个,增强阅读性。由于这个注解在运行时没啥作用,所以它的保留策略...
  • java 数组 幂集_数组

    2021-03-17 20:30:42
    文章目录一、参数解释:1、script元素:2、where元素:3、foreach元素foreach元素的主要属性如下:二、Dao层代码如下:一、参数解释:1、script元素:在带注解的映射器接口中使用动态SQL,可以使用script元素2、where元素...
  • java 课件 数组、枚举及注解 java 课件 数组、枚举及注解 java 课件 数组、枚举及注解 java 课件 数组、枚举及注解
  • 因为现在我也是在新手阶段使用的时候请先认真看我的注解,这个代码我是测试过才放上来的,绝对没错的有问题欢迎留言,共同发现,彼此进步。importjava.util.Random;/**对指定长度的数组进行乱序(下标乱序)*/...
  • (给ImportNew加星标,提高Java技能)...Java SE 1.5引入了注解,程序员通过注解可以为程序编写元数据(metadata)。根据 Oracle 官方文档,注解的定义如下:“注解是元数据的一种形式,提供与程序相关的数据,该数据...
  • Java定义了4个标准的meta-annotation类型:1.@Target2.@Retention3.@Documented4.@Inherited这些类型和它们所支持的类在java.lang.annotation包中可以找到。下面我们看一下每个元注解的作用和相应分参数的使用说明。...
  • 注解:元注解的作用就是负责注解...Java5.0定义的元注解:1.@Target,2.@Retention,3.@Documented,4.@Inherited这些类型和它们所支持的类在java.lang.annotation包中可以找到。下面我们看一下每个元注解的作用和...
  • 注解(Annotation)是放在Java源码的类、方法、字段、参数前的一种特殊“注释”。注解是JDK1.5及以后版本引入的一个特性,与类、接口、枚举是在同一个层次。它可以声明在类、方法等的前面,用来对这些元素进行说明,...
  • JAVA注解概述:1. 注解是给编译器看的,这不同于注释2. 三个基本的注解:@Override 告诉编译器这是在覆写方法@Deprecated 告诉编译器该方法过时了@SuppressWarnings("unchecked") 不要警告= (value={"unchecked"})3....
  • 一、注解: * 概念:说明程序的。给计算机看的 * 注释:用文字描述程序的。给程序员看的 * 定义:注解(Annotation),也叫元数据。一种代码级别的说明。它是JDK1.5及以后版本引入的一个特性,与类、接口、枚举是在...
  • 前言注解Java很强大的部分,但大多数时候我们倾向于使用而不是去创建注解。例如,在Java源代码里不难找到Java编译器处理的@Override注解,Spring框架的@Autowired注解, 或Hibernate框架使用的@Entity 注解,但...
  • 我有一个自定义注释如下. @Retention(RetentionPolicy.RUNTIME) @... 我试过下面的代码, final List 但得到以下错误在第二行anyMatch, java.lang.ClassCastException: [I cannot be cast to java.lang.Integer 谢谢
  • 本文整理匯總了Java中org.springframework.core.annotation.AnnotationAttributes.getClassArray方法的典型用法代碼示例。如果您正苦於以下問題:Java AnnotationAttributes.getClassArray方法的具體用法?Java ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,021
精华内容 408
关键字:

java数组注解

java 订阅