java 泛型应用,通用返回类,泛型方法,泛型静态方法

  • 泛型简介
  • 应用示例
  • 静态方法增加泛型参数
  • 调用静态公有方法
    • 对比调用非静态公有方法(成员方法)

泛型简介

这里不多说明,详见 java泛型入门

应用示例

以下皆用此通用返回类为示例进行说明

public class ResultBody<T> {/*** 响应代码*/private String code;/*** 响应消息*/private String message;private T result;//...getter setter toString 省略.../*** 成功** @return*/public static ResultBody success() {return success(null);}/*** 成功** @param data* @return*/public static<T> ResultBody success(T data) {ResultBody rb = new ResultBody();rb.setCode(CommonEnum.SUCCESS.getResultCode());rb.setMessage(CommonEnum.SUCCESS.getResultMsg());rb.setResult(data);return rb;}/*** 失败*/public static ResultBody error(String code, String message) {ResultBody rb = new ResultBody();rb.setCode(code);rb.setMessage(message);rb.setResult(null);return rb;}/*** 失败*/public static ResultBody error(String message) {ResultBody rb = new ResultBody();rb.setCode("-1");rb.setMessage(message);rb.setResult(null);return rb;}

静态方法增加泛型参数

在方法名前增加static<T>以表明该方法为静态泛型方法

 public static<T> ResultBody success(T data) {return null}

调用静态公有方法

对于静态公有方法,调用方式为类名.方法名(参数...); 如:

ResultBody rb = new ResultBody();
rb = ResultBody.success("测试");

对比调用非静态公有方法(成员方法)

先创建调用类的对象再调用其方法,如调用toString()

ResultBody rb = new ResultBody();
String rbStr = rb.toString();// 也可以写成
String rbStr = new ResultBody().toString();

java 泛型应用,通用返回类,泛型方法,泛型静态方法相关推荐

  1. java mysql dbhelper_DbHelper通用数据库类及增删改 使用示例

    DbHelper db = new DbHelper(); protected void Page_Load(object sender, EventArgs e) { } //新增数据 protec ...

  2. java切面不需要接口了吗_使用java语言,如何对一个类中的静态方法做切面编程?...

    展开全部 package com.classloader.test; import java.lang.reflect.InvocationTargetException; import java.l ...

  3. 泛型学习笔记:泛型使用的注意点、泛型在继承方面的体现、自定义泛型结构、泛型应用举例、通配符

    泛型学习笔记 集合是为了解决数组某些存储限制的特点出现的,但是数组有一个优点就是存放的数据的类型是确定的,但是集合容器在声明阶段存入的对象是什么类型是不确定的,所以在JDK1.5之前只能把元素的类型设 ...

  4. java 泛型 父子_使用通配符和泛型:完成父子类关系的List对象的类型匹配

    泛型和通配符 使用泛型和通配符都可以让一个方法所表示的算法逻辑适应多种类型. Java中具备继承关系的类A.B(A extends B)它们的集合List和List之间是没有继承关系的, 可以使用泛型 ...

  5. java参数传入的是一个类名_Java编程细节——泛型的定义(类、接口、对象)、使用、继承...

    1. 设计泛型的初衷: 1) 主要是为了解决Java容器无法记忆元素类型的问题: i. 由于Java设计之初并不知道会往容器中存放什么类型的元素,因此元素类型都设定为Object,这样就什么东西都能放 ...

  6. java泛型程序设计——定义简单泛型类+泛型方法

    [0]README 0.1) 本文描述+源代码均 转自 core java volume 1, 旨在理解 java泛型程序设计 的 定义泛型类+泛型方法的知识: [1]一个泛型类: 就是具有一个或多个 ...

  7. java 泛型类 静态方法_JAVA——泛型类和泛型方法(静态方法泛型)

    泛型类定义的泛型,在整个类中有效.如果被方法是用,那么 泛型类的对象明确要操作的具体类型后,所有要操作的类型就已经固定了. 为了让不同的方法可以操作不同类型,而且类型还不确定.那么 可以将泛型定义在方 ...

  8. Java 泛型的作用以及类、方法、接口的使用和通配符

    一.泛型的作用 1.集合如果不使用泛型:         存的时候什么类型都可以,但是要取的时候会懵,因为取出来啥也不是,或者不知道取的是什么类型的数据.像这样: // 创建ArrayList集合,不 ...

  9. 获取java类中泛型的Class汇总

    一,当前类沿用泛型接口 需要一个属性用来保存泛型的Class,生成对象时通过构造器指定 二,父类是泛型抽象类,当前类继承并指定了父类泛型 getClass() 的对象为ProductTemplateF ...

最新文章

  1. Plant Physiol. | 中科院遗传所储成才研究组发现水稻NLR类抗病基因突变导致的白叶枯病感病机制...
  2. SpringBoot集成websocket(java注解方式)
  3. Git强制覆盖还原本地救火命令
  4. Java基础-static 关键字解析
  5. echo(),print(),print_r(),var_dump()的区别
  6. 读书笔记—《销售铁军》随记7
  7. mysql 函数 数字转字串_mysql中字符串和数字的互转函数
  8. Windows 环境下配置 Oracle 11gR2 Data Guard 手记
  9. git 删除分支_深入浅出图解Git,入门到精通(保姆级教程)
  10. php1怎么获取网卡id号,C#获得MAC地址(网卡序列号)代码
  11. 2021MathorCup高校数学建模挑战赛——大数据竞赛的一些想法总结
  12. Pandas常用操作方法
  13. linux tar 命令安装,Linux tar 命令 command not found tar 命令详解 tar 命令未找到 tar 命令安装 - CommandNotFound ⚡️ 坑否...
  14. php阿拉伯数字转换大写,php 阿拉伯数字如何转大写
  15. 华为路由器GRE隧道配置
  16. 鲁百年创新设计思维学习总结
  17. 计算机语言学方面的期刊.,自然语言处理投稿哪些sci期刊
  18. [CF1132D]Stressful Training
  19. [重要笔记]网络信号在网线和集线器中传输
  20. Q上多项式可约性深化定理

热门文章

  1. Network Embedding 与 Graph Embedding
  2. 判断字符串是否由纯数字组成
  3. Ubuntu 配置串口信息
  4. 2011年华科计算机考研复试机试题真题
  5. DataGridView控件的使用 1206 半草稿
  6. django 路径转换器
  7. git-下载与安装windows版本与linux版本
  8. ERROR! The server quit without updating PID file解决办法
  9. Leetcode PHP题解--D68 283. Move Zeroes
  10. hadoop day 6