版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_35744460/article/details/89705539
object AbsApp {
def main(args: Array[String]): Unit = {
val a = new A
println(a.eat)
println( a.say)
// println(a.run())
}
}
//*********extends 后面可以跟 abstract 或 trait with 后面 必须是 trait with 后面可以多个 (多实现)******
class A extends B with C{
override def eat() ={
println("a")
"aaa"
}
override def say() = {
println("aa")
"aaaa"
}
}
//抽象类
//不能直接new
// 子类必须实现 父类 的所有方法 否则必须也用abstrast 修饰
abstract class B{
def eat():String
def run()={
println("B")
"b"
}
}
//scala不支持对类进行多继承,但是支持多重继承trait,使用with关键字即可
trait C {
def say():String
// def run() ={
// println("c")
// "c"
// }
}