温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Java泛型类与泛型方法的定义详解

发布时间:2020-09-14 11:46:29 来源:脚本之家 阅读:124 作者:cakincqm 栏目:编程语言

本文实例讲述了Java泛型类与泛型方法的定义。分享给大家供大家参考,具体如下:

Java泛型类的定义

一 点睛

泛型类定义的语法如下:

[访问修饰符] class 类名称 <T>

泛型类的主要作用在于类被实例化后,传入具体的类型参数,对类的成员属性的类型和成员方法的参数类型和返回值类型进行替换。

二 代码

public class Base<T> {
  T m;
  Base(T t) {
    m = t;
  }
  public T getM(){
    return m;
  }
  public void print() {
    System.out.println("base print : " + m);
  }
  public static void main(String[] args) {
    Base<String> base=new Base<String>("base class is general");
    System.out.println(base.getM());
    base.print();
  }
}

三 运行

base class is general
base print :  base class is general

四 说明

T可以用任何一种引用类型,但是不允许使用基本类型,如int、double、char、boolean等是不允许的。泛型类定义时,可以使用T来定义其成员变量和成员方法的返回值和参数。

Java泛型方法的定义

一 点睛

泛型方法主要用于容器类,Java中任何方法,包括静态的(注意,泛型类不允许在静态环境中使用)和非静态的,均可以用泛型来定义,而且和所在类是否是泛型没有关系。

下面是泛型方法的定义

[public] [static] <T> 返回值类型 方法名(T 参数列表)

二 代码

public class GeneralMethod {
   public static <U> void print(U[] list) {
     System.out.println();
     for (int i = 0; i < list.length; i++) {
      System.out.print(" " + list[i]);
     }
     System.out.println();
   }
   public static void main(String[] args) {
     String a[]={"a","b","c","d","e"};
     Character b[]={'1','2','3','4','5'};
     Integer c[]={1,2,3,4,5};
     GeneralMethod.print(a);
     GeneralMethod.print(b);
     GeneralMethod.print(c);
   }
}

三 运行

a b c d e

1 2 3 4 5

1 2 3 4 5

四 说明

使用泛型方法时,至少返回值或参数有一个是泛型定义的,而且应该保持一致,否则可能会受到各种限制,因此,这里建议保持一致。

更多java相关内容感兴趣的读者可查看本站专题:《Java面向对象程序设计入门与进阶教程》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》

希望本文所述对大家java程序设计有所帮助。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI