gpt4 book ai didi

scala - 将类作为值传递并创建实例

转载 作者:行者123 更新时间:2023-12-04 14:47:15 26 4
gpt4 key购买 nike

我有许多类具有共同的基本特征。我有一个函数需要创建这些类之一的实例的新实例,但哪个只在运行时才知道。

是否可以将此类作为参数传递并在运行时在 Scala 中创建实例?

我什至不确定答案是否是最好的方法,但目前这是我唯一能想到的。

最佳答案

您可以这样传递值:

myFunc(classOf[myObj])

到带有签名的方法
def myFunc(clazz : AnyRef)={ ...

但这闻起来很糟糕。您要么正在考虑实现 factory pattern ,或者更好的是,您可以使用多态性并简单地执行以下操作:
myObj.myFunc

因为您的功能取决于所涉及的类。

关于scala - 将类作为值传递并创建实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14316940/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com