gpt4 book ai didi

scala - 为什么Scala的traits从右到左执行?

转载 作者:行者123 更新时间:2023-12-04 16:34:46 25 4
gpt4 key购买 nike

例如,这个:

val queue = new BasicIntQueue with Doubling with Incrementing with Filtering
queue.put(1)
println(queue.get())

将打印:
Filtering
Incrementing
Doubling
put
4

对于我来说,如果它按照我编写操作的顺序从左到右执行,会更具可读性。

最佳答案

因为它遵循与继承相同的模式。想象一下,你有这样的事情:

class BasicIntQueue 
class Doubling extends BasicIntQueue
class Incrementing extends Doubling
class Filtering extends Incrementing

val queue = new Filtering

你会得到和你看到的一样的结果: Filtering首先被执行,然后传递给 Incrementing ,然后 Doubling最后 BasicIntQueue .

关于scala - 为什么Scala的traits从右到左执行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17620555/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com