yılında özellik karıştırılır sınıfın adını alma, biz açıkça adını dönebilirsiniz:Scala: sınıfın bir örneği göz önüne alındığında
trait MixedInClassDiscovery {
val className = this.getClass.getName
}
class AClass extends MixedInClassDiscovery {
...
this.className // returns "AClass"
...
}
Ama bu şekilde bir kez AClass
her örneği için, yansıma kullanır. Aynı yerine her sınıf için bir kez yapılabilir mi?
Akla gelen bir çözüm, sınıfların kendileri yerine tamamlayıcı nesneler halinde karıştırmaktır.
Hayır, bu kod hala her örnek için yansıma çağrısı yapıyor. Aslında, her bir 'className' çağrısı için, bu basitçe sabitlenebilir. –