In Java, ho una classe come questa:scala equivalente di java campo pubblico
public class MyClass extends Properties {
public StringProperty prop1 = new StringProperty(this, "default value for prop1");
public StringProperty prop2 = new StringProperty(this, "prop2 default val");
}//MyClass
classe padre "Proprietà" utilizza la riflessione per cercare tutti i campi pubblici in sé, e riempie le variabili con valori come necessario.
Come estendere le proprietà in scala? L'utilizzo di var prop1:StringProperty ...
non funziona, suppongo a causa di come scala converte i campi privati per ottenere ... impostare ... metodi di tipo.
Ho visto anche questo post, ma sfortunatamente non funzionerà ... il riflesso si verifica nella classe genitore Proprietà, che è scritto in linguaggio java e non posso cambiare quel codice sorgente. – user85116
Ho paura che non ci sia molto che tu possa fare, Scala non emette campi pubblici nel bytecode generato, quindi il modo in cui la classe Properties fa il reflection, non funzionerà per il tuo codice Scala. –