scala 中apply方法的理解

来源:互联网 发布:js promise的用法总结 编辑:程序博客网 时间:2024/05/17 02:08

水平有限,欢迎批评指正,相互学习。
下面介绍下object方法和class方法同时出现时,不同写法调用不同方法的区别和联系。

注:我 object ApplyTest 的apply方法中调用了new ApplyTest

1. new ApplyTest

这里写图片描述

2.new ApplyTest()

这里写图片描述

总结 :new 的只执行class 类的代码块和 class中的apply方法
带括号与不带括号结果一致

3 .ApplyTest

这里写图片描述

4 .ApplyTest()

这里写图片描述

总结:
ApplyTest() 和ApplyTest
相同点:都执行object 代码块、object apply 方法、class 代码块。
不同点:有括号的还执行class 中的apply方法,没有括号的不执行class 中定义的apply方法