• 泛型与反射


    泛型方法:

    你可以写一个泛型方法,该方法在调用时可以接收不同类型的参数。根据传递给泛型方法的参数类型,编译器适当地处理每一个方法调用。

    下面是定义泛型方法的规则:

    • 所有泛型方法声明都有一个类型参数声明部分(由尖括号分隔),该类型参数声明部分在方法返回类型之前(在下面例子中的<E>)。
    • 每一个类型参数声明部分包含一个或多个类型参数,参数间用逗号隔开。一个泛型参数,也被称为一个类型变量,是用于指定一个泛型类型名称的标识符。
    • 类型参数能被用来声明返回值类型,并且能作为泛型方法得到的实际参数类型的占位符。
    • 泛型方法体的声明和其他方法一样。注意类型参数只能代表引用型类型,不能是原始类型(像int,double,char的等)。

    实例:

     1 public class GenericMethodTest
     2 {
     3    // 泛型方法 printArray                         
     4    public static < E > void printArray( E[] inputArray )
     5    {
     6       // 输出数组元素            
     7          for ( E element : inputArray ){        
     8             System.out.printf( "%s ", element );
     9          }
    10          System.out.println();
    11     }
    12  
    13     public static void main( String args[] )
    14     {
    15         // 创建不同类型数组: Integer, Double 和 Character
    16         Integer[] intArray = { 1, 2, 3, 4, 5 };
    17         Double[] doubleArray = { 1.1, 2.2, 3.3, 4.4 };
    18         Character[] charArray = { 'H', 'E', 'L', 'L', 'O' };
    19  
    20         System.out.println( "整型数组元素为:" );
    21         printArray( intArray  ); // 传递一个整型数组
    22  
    23         System.out.println( "
    双精度型数组元素为:" );
    24         printArray( doubleArray ); // 传递一个双精度型数组
    25  
    26         System.out.println( "
    字符型数组元素为:" );
    27         printArray( charArray ); // 传递一个字符型数组
    28     } 
    29 }
  • 相关阅读:
    遥控按键上报键值映射问题
    AutoLock类
    Mutex互斥锁
    c++ 字符串和数字转换时的特殊处理
    pytorch实现MLP并在MNIST数据集上验证
    python实现直方图均衡化,理想高通滤波与高斯低通滤波
    python实现贝叶斯网络的概率推导(Probabilistic Inference)
    python+opencv实现车牌定位
    python添加高斯噪声和椒盐噪声,实现中值滤波和均值滤波,实现Roberts算子和Sobel算子
    c++学习笔记_6
  • 原文地址:https://www.cnblogs.com/lzq666/p/8352356.html
Copyright © 2020-2023  润新知