【发布时间】:2014-09-04 09:11:01
【问题描述】:
我想为一些导入的 Java 类型创建伴随对象,这样我就不必使用 new 来分配它们。我想从从 jMonkeyEngine 的 com.jme3.math 导入的 Vector3f 类型开始。
我尝试的是:
package com.jme3.math
object Vector3f {
def apply() = new Vector3f()
def apply(x:Float, y:Float, z:Float) = new Vector3f(x,y,z)
}
编译时出现错误:
错误:(8, 21) 未找到:类型 Vector3f def apply() = new Vector3f()
当我添加 import com.jme3.math.Vector3f 时,我收到警告,这可能解释了我所看到的:
警告:(3, 22) 导入的 `Vector3f' 被数学包中 Vector3f 对象的定义永久隐藏
如何为 com.jme3.math.Vector3f 或从 Java 导入的其他类型创建伴随对象?
【问题讨论】:
标签: scala import companion-object