Gibt es eine Möglichkeit, eine andere Klasse aus einer anonymen Klasse in Scala zu erweitern? Ich bedeutet soviel wieScala Wie zu verwenden erstreckt sich mit einer anonymen Klasse
abstract class Salutation {
def saybye(): String = "Bye"
}
class anotherClass() {
def dummyFunction() = {
val hello = new {
def sayhello(): String = "hello"
} extends Salutation
val hi = hello.sayhello //hi value is "Hello"
val bye = hello.saybye //bye value is "bye"
}
}
Ich habe es nicht zuerst angegeben, aber ja Anrede ist abstrakt ... Anrede haben keine sayHello, aber es hat eine andere Funktion, die ich brauche und nutzen möchte. Gibt es einen anderen Weg, ohne eine "echte" Klasse zu schaffen? – frank
Ja, der oben angegebene Code funktioniert, und Sie erhalten eine Instanz von 'Salutation {def sayhello: String}', mit der Sie beide Methoden aufrufen können. –
Hmmm ich soll es so verwenden: „val hallo: Anrede {def sayHello: String}“ Wenn ja, wie ich definieren, was SayHello tut und wie ich es instanziiert? – frank