Scala面向对象的扩展用法
类型检查和转换
使用isInstanceof[],判断类型,使用asInstanceof 进行类型强转。其中中括号表示的是泛型
object Scala_24ObjectExt {
def main(args: Array[String]): Unit = {
// 获取类信息
val value = classOf[User24]
}
}
class User24{
var id : Int = _
override def equals( o : Any): Boolean = {
// Scala语言中中括号表示泛型
if(o.isInstanceOf[User24]){
val user2 = o.asInstanceOf[User24]
this.id == user2.id
}else{
false
}
// isInstanceOf 判断是否为类的示例
}
}
枚举类和应用类
枚举类就是定义一个枚举对象,应用类需要继承App,可以直接调用
object Color extends Enumeration {
val RED = Value(1, "red")
val YELLOW = Value(2, "yellow")
val BLUE = Value(3, "blue")
}
// 应用类
object Test20 extends App {
println("xxxxxxxxxxx");
print(Color.BLUE)
}
Type给类取别名
使用type关键字可以定义新的数据数据类型名称,本质上就是类型的一个别名
object Test {
def main(args: Array[String]): Unit = {
type S=String
var v:S="abc"
def test():S="xyz"
}
}