简单的扩展不起作用,如何在 scala 中做到这一点

发布于 2024-12-10 09:43:04 字数 478 浏览 0 评论 0原文

我尝试使用 scala,但这里出了问题。也许是因为太晚了,或者可能是因为 Eclipse 无法正常工作,但我这里有一个错误:

    class A(
      val name: String,
      val age: Integer,
      val pro: Boolean
    )

    class B(val size: Integer) extends A(name, age, pro) //error
  • 未找到:值年龄 B.scala /Test/src line 1 Scala Problem
  • not find: value name B.scala /Test/src line 1 未找到Scala 问题
  • :值 pro B.scala /Test/src 第 1 行 Scala 问题

A 类位于同一包中。我认为这就是扩展工作的方式...有人有想法吗?

I tried to play with scala and somethings wrong here. Maybe because its too late or maybe because eclipse wont work fine, but I have here an error:

    class A(
      val name: String,
      val age: Integer,
      val pro: Boolean
    )

    class B(val size: Integer) extends A(name, age, pro) //error
  • not found: value age B.scala /Test/src line 1 Scala Problem
  • not found: value name B.scala /Test/src line 1 Scala Problem
  • not found: value pro B.scala /Test/src line 1 Scala Problem

Class A is in the same package. I tought thats the way how extends work... somebody an idea?

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

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

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

二货你真萌 2024-12-17 09:43:04

当您定义 class B(val size: Integer) extends A(name,age, pro) 时,您还定义了一个构造函数,该构造函数将使用 A 调用构造函数>name、agepro 参数。编译器抱怨变量未定义。

因此,您需要的可能是这样的:

class B(val size: Integer
  name: String,
  age: Integer,
  pro: Boolean) extends A(name, age, pro)

在一个不相关的注释中,Scala 中整数的类型通常称为 IntInteger 指的是java.lang.Integer。通常 Int 工作得很好,除非遇到 Java 互操作性问题。

When you define class B(val size: Integer) extends A(name, age, pro) you also define a constructor that will call the constructor from A with the name, age, pro parameters. The compiler complains that that variables are not defined.

So may be something like this it what you need:

class B(val size: Integer
  name: String,
  age: Integer,
  pro: Boolean) extends A(name, age, pro)

On an unrelated note, the type for integer in Scala is typically called Int. Integer refers to java.lang.Integer. Usually Int works just fine unless you are running into Java interoperability issues.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文