是时髦的弱类型还是强类型?

时间:2014-01-24 21:58:35

标签: groovy typing

我不明白groovy打字是如何运作的。在wikipedia上写道它有一个强类型,但我可以在解释器上完美地做到这一点:

1 + '1'
==> 11

所以也许我很困惑,我不明白弱打字是什么,但我想知道这个功能是什么。

1 个答案:

答案 0 :(得分:3)

这不是弱或严格类型语言的问题。正如delnan所示,有一个疲惫的光滑主题,这里的术语可能不同。

你在解释器中看到的是一个重载加运算符的工作,它允许你轻松地将值连接成字符串,这是打印一些输出或记录的非常有用的功能。

具体来说,Groovy是弱的(可选地,如所建议的那样)键入,您可以使用def关键字定义类型,或者可以省略它们。它还允许您进行大量隐式转换,因为它具有动态特性。 More info about types.有几个注释,允许您更改此行为,例如@CompileStatic or @TypeChecked

在每种特定情况下,您都可以使用正确的打字策略获得更好的解决方案。它非常Groovy;)