17.Scala面向对象的扩展用法

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"
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值