在 Scala 的特征中使用枚举

using Enum in traits in scala

我有一个名为 UserT 的特征和一个扩展该特征的 class DirectUserT 我想在特征中添加枚举,以便 child classes 可以使用它 我做了一个扩展枚举的 scala Object UserStatus 现在我想在我的特征中使用这个枚举,以便 child classes 可以使用它,但我不知道我应该怎么做?

我的枚举object

package testlogic

    object UserStatus extends Enumeration{

        type  UserStatus = Value
        val ACTIVE , INACTIVE , BLOCKED , DELETED = Value

    }

这是我的 UserT 代码

package testlogic
 import testlogic.UserStatus._
trait UserT {

  var name : String = ""
  def setName( aName: String)= {
    name = aName
  }
  def getName : String = {
    name
  }

}

DirectUserT.scala

package testlogic


    class DirectuserT extends  UserT {

     var currentStatus =BLOCKED
     //println(currentStatus)

    }

eclipse 在 BLOCKED 上显示错误

请帮忙

您需要添加

import testlogic.UserStatus._

给你classDirectUserT.scala

或将其添加到您的特质中:

trait UserT {
  import testlogic.UserStatus._
}