返回介绍

3. def 和类型

发布于 2025-01-04 00:44:55 字数 918 浏览 0 评论 0 收藏 0

很多开发者往往会同时使用 def 和类型,但这里的 def 是多余的。因此,要么使用 def ,要么使用类型。

所以不要这样写:

def String name = "Guillaume"

这样写就足够了:

String name = "Guillaume"

在 Groovy 中使用 def 时,实际的类型持有者是 Object ,所以可以将任何对象赋予利用 def 定义的变量,如果一个方法声明为返回 def 类型值,则它会返回任何类型的对象。

定义带有无类型参数的方法时,可以使用 def ,但并不是必需条件,因此我们习惯上会忽略使用它。所以,与其采用如下方式:

void doSomething(def param1, def param2) { }

我们会更多建议采用如下方式:

void doSomething(param1, param2) { }

但正如我们在上一节中所提到的那样,为方法参数确定类型通常是一个不错的习惯,这样做不仅能够便于注释代码,而且也有助于 IDE 的代码补全,或者利用 Groovy 的静态类型检查或静态编译功能。

另一个 def 显得多余并且应该避免使用的地方是构造函数的构造:

class MyClass {
  def MyClass() {}
}

去掉 def 就可以了:

class MyClass {
  MyClass() {}
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文