首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >classOf的输入类型是什么

classOf的输入类型是什么
EN

Stack Overflow用户
提问于 2013-04-15 02:09:53
回答 2查看 212关注 0票数 1

我想知道我应该用什么类型来代替XXX

代码语言:javascript
复制
def registerClass(cl:XXX) = kryo.register(classOf[cl])

编辑:我为什么要这样做。

我必须使用上面的代码注册许多类。我希望删除多次调用kyro.register的重复操作,希望编写如下代码:

代码语言:javascript
复制
 Seq(com.mypackage.class1,com.mypackage.class2,com.mypackage.class3).foreach(registerClass)

另一个问题是,我可以改为传递字符串吗?并以某种方式将其转换为registerClass中的类?

代码语言:javascript
复制
Seq("com.mypackage.class1","com.mypackage.class2").foreach(registerClass)

编辑2:当我编写com.mypackage.class1时,它指的是我的源代码中定义的任何类。所以如果我创建一个类

代码语言:javascript
复制
package com.mypackage.model

class Dummy(val ids:Seq[Int],val name:String)  

我会提供com.mypackage.model.Dummy作为输入,

代码语言:javascript
复制
kryo.register(classOf[com.mypackage.model.Dummy])

Kryo是一个Java序列化库。寄存器类的签名是

代码语言:javascript
复制
register(Class type)
EN

Stack Overflow用户

回答已采纳

发布于 2013-04-15 02:24:12

你可以这样做:

代码语言:javascript
复制
def registerClass(cl:Class[_]) = kryo.register(cl)

然后这样叫它:

代码语言:javascript
复制
registerClass(classOf[Int])
票数 4
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16002533

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档