问题标签 [traits]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - 为什么类不能使用相同签名的方法扩展特征?
为什么我会收到以下错误?如何解决它?
我假设由于 A 和 B 编译为 (interface,class) 对,因此在编译 C 时选择正确的静态方法调用来实现是一个问题。我希望优先级按顺序排列。
请注意,在 Ruby 中这很好用:
python - Python Traits UI (Enthought)
我正在使用一些代码,这些代码使用 Traits UI 来显示一个对话框,用户可以从中选择两个文件:
编辑 filename_1 或 filename_2 值时,会显示一个文件选择器对话框,标题为“另存为”。我被要求将标题更改为“打开”甚至“选择文件”。不幸的是,我似乎无法找到如何改变这一点。任何人都可以帮忙吗?
javascript - javascript中的特征
如何在 javascript 中实现特征?
scala - 自我类型和特质子类有什么区别?
特质的自我类型A
:
说“A
不能混入不扩展的具体类B
”。
另一方面,以下内容:
说“任何(具体或抽象)类混入A
也将混入 B”。
这两个陈述不是同一个意思吗?self 类型似乎仅用于产生简单的编译时错误的可能性。
我错过了什么?
scala - 使用抽象类而不是特征有什么好处?
使用抽象类而不是特征(除了性能)有什么好处?在大多数情况下,抽象类似乎可以被特征取代。
scala - 抽象类和特征之间的区别
可能重复:
Scala 特征与抽象类
抽象类和特征之间的概念区别是什么?
scala - scala:mixins取决于参数的类型
我有一组模型类,以及一组可以在模型上运行的算法。并非所有类别的模型都可以执行所有算法。我希望模型类能够声明它们可以执行哪些算法。模型可以执行的算法可能取决于它的参数。
示例:假设我有两个算法,MCMC 和重要性,表示为特征:
我有一个模型类 Normal,它接受一个均值参数,它本身就是一个模型。现在,如果 mean 实现 MCMC,我希望 Normal 实现 MCMC,如果 mean 实现 Importance,我希望 Normal 实现 Importance。
我可以写:class Normal(mean: Model) extends Model { // 一些常见的东西放在这里 }
我可以创建工厂方法来确保以给定的平均值创建正确的 Normal 类型。但显而易见的问题是,如果 mean 同时实现了 MCMC 和 Importance 会怎样?然后我希望 Normal 也实现它们。但我不想创建一个重新实现建议和转发的新类。如果 NormalMCMC 和 NormalImportance 不带参数,我可以使它们成为特征并将它们混合在一起。但在这里我希望混合取决于参数的类型。有没有好的解决方案?
scala - Scala 中的特征和抽象方法覆盖
我有一个基本的抽象类(特征)。它有一个抽象方法foo()
。它由几个派生类扩展和实现。我想创建一个可以混合到派生类中的特征,以便它实现foo()
然后调用派生类的foo()
.
就像是:
我尝试了自我类型和结构类型,但我无法让它工作。
c++ - boost add_reference 不适用于模板参数
我正在尝试使用类型特征来添加对模板参数的引用。
但是,它似乎不起作用。这是正确的方法吗?我的编译器是 g++ 4.3。谢谢。
澄清:我希望引用成员被引用,不管 S< type > 或 S< type& > 是否被实例化。
scala - 具有特征的案例类的equals/hashCode的Scala语义
我是 Scala 的新手。在 2.7.7 中,以下代码
印刷
而我本来期望的
我错过了什么?提前致谢。