当前位置: 首页 > 面试题库 >

如何解读“公众” T readObjectData(…类 类型)”在Java中?

樊博雅
2023-03-14
问题内容

我有这个Java代码。

public <T> T readObjectData(ByteBuffer buffer, Class<T> type) {
...
T retVal = (T) summaries;
return retVal;

该代码如何解释?为什么我们需要public <T> T代替public T

如何将参数赋予第二个参数(Class<T> type)?


问题答案:

这声明了readObjectData通用方法,带有一个类型参数T

public <T> ...

然后,返回类型为T

... T readObjectData(...

如果没有initial <T>,这是通用类型声明,则该符号T将是未定义的。

在参数列表中,Class<T> type是参数之一。因为返回类型和此参数都引用T,所以可以确保如果传入a
Class<String>,则它将返回a String。如果您输入了Class<Double>,则它将返回Double

要传递参数,请传递任何Class对象,例如String.class



 类似资料:
  • 本文向大家介绍微信公众号消息类型?相关面试题,主要包含被问及微信公众号消息类型?时的应答技巧和注意事项,需要的朋友参考一下 微信目前提供了7种基本消息类型,分别为: (1)文本消息(text); (2)图片消息(image); (3)语音(voice) (4)视频(video) (5)地理位置(location); (6)链接消息(link); (7)事件推送(event) 类型。 掌握不同的消息

  • 我是Rest API的新手。我有一个xml输出需要解封。以下是xml输出: 实际的xml输出总共有37个条目。下面是模型类: 下面是Rest Api类代码: 在执行此代码时,我收到错误 javax.xml.bind.UnMarshalException-带有链接异常:[org.xml.sax.saxParseException;LineNumber:1;ColumnNumber:110;外部DTD

  • 问题内容: 我想在一个程序包中打印所有的类名,并在每个程序包中打印相应的属性及其数据类型。 在一个代码中,我能够以字符串形式获取类名。在另一个代码中,我可以使用以下方法获取属性及其数据类型 但是我想合并两个代码。由于在第一个代码中我以字符串的形式获得了类名,我无法使用,因为这里是类型。 因此,我需要一种将“ 类名”从类型转换为类型的方法。 我试过了,但是没有用。 问题答案: 确保是完全合格的类名,

  • 问题内容: 当我尝试获取Integer类型的输入时,我只需要做的就是下面的代码。 但是当涉及到BigInteger时,我不知道该怎么办。如何读取用户的BigInteger类型输入? 问题答案: 参考:Scanner#nextBigInteger

  • 问题内容: 我是C ++ / Java程序员,在日常编程中碰巧使用的主要范例是OOP。在某个线程中,我读到一条评论,即Type类本质上比OOP更直观。有人可以用简单的词来解释类型类的概念,以便像我这样的OOP家伙可以理解吗? 问题答案: 首先,我总是非常怀疑这种程序结构更直观。编程是违反直觉的,并且总是会因为人们自然而然地根据特定情况而不是一般规则来思考。要更改此设置,需要培训和实践,也称为“编程

  • 我有以下两段代码: 自定义标题。tsx 详细信息屏幕。tsx 在detailscreen中,我得到以下错误: 属性“导航”在“只读”类型上不存在 我搜索了这个问题,我知道它有一个问题,即我没有在CustomHeader中声明类型。然而,我不知道如何解决这个问题。我对打字有点陌生。有人能给我解释一下如何解决这类问题吗?