我跟着讲座,讲师正在使用
Eclipse,但我正在使用IntelliJ IDEA Community Edition 15.0.6,而名为rationals.scala的Scala工作表上的代码如下
object rationals{ val x = new Rational(1,2) x.numer x.denom } //noinspection ScalaPackageName class Rational(x: Int,y: Int) { def numer = x def denom = y }
Scala工作表工作表将不会计算,并且存在与读取的类定义关联的警告(而不是错误)
Package names doesn’t correspond to directories structure,this may
cause problems with resolve to classes from this file
此外,这是奇怪的,但可能很重要,IDEA标志着numer和denom作为拼写错误.
任何指导?谢谢
解决方法
问题不在于名称匹配目录结构,实际问题是您在工作表中有多个不喜欢的定义.如果在对象内声明类,那么它将正确计算:
object rationals { class Rational(x: Int,y: Int) { def numer = x def denom = y } val x = new Rational(1,2) x.numer x.denom }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。