package day03
object TraitDemo {
def main(args: Array[String]): Unit = {
val human = new Human
println(human.name)
println(human.distance)
println(human.fight)
println(human.run())
}
}
/**
* 特质
*/
trait Flyable {
//
val distance: Int
def fight: String
def fly: Unit = {
println("flying")
}
}
/**
* 抽象类
*/
abstract class Animal {
val name: String
def run(): String
def climb: Unit = {
println("I can climb")
}
}
// 可以直接继承
class Human extends Animal with Flyable {
override val name: String = "aaa"
override def run(): String = "I can run"
override val distance: Int = 500
override def fight: String = "fighting with gun"
}
转载于:https://www.cnblogs.com/sunnystone85/p/11362690.html
相关资源:JAVA上百实例源码以及开源项目