У меня есть это в Скале:Используя SCALA общий класс в Java
object Tester {
def apply[T : Manifest](description: String, initValue: T) = new Tester[T](description, initValue)
implicit def TesterToValue[T](j: Tester[T]): T = j.value
}
class Tester[T : Manifest](someData: String, initValue: T) {
private var value = initValue
def getValue : T = value
}
, который позволяет мне делать
val t1 = JmxValue("some data", 4)
Я пытаюсь создать экземпляр этого Java, до сих пор у меня не было никакой удачи я попытался:
Tester t1 = Tester<Integer>("data", 0);
Tester<Integer> t1 = Tester<Integer>("data", 0);
Tester t1 = Tester("data", 0);
Tester t1 = new Tester<Integer>("data", 0);
Tester<Integer> t1 = new Tester<Integer>("data", 0);
есть некоторые ограничения в использовании SCALA общие классы в Java? Или я просто делаю что-то ужасно неправильно
Для начала вы можете ударить по всем попыткам, которые не используют 'new'. 'Tester t1 = Tester (" data ", 0);' не является синтаксически допустимой Java ни при каких обстоятельствах (что даже не имеет никакого отношения к Scala). –