1.抽象类-abstract
abstract为一种非常抽象的抽象属性(class,抽象)
1.不能new。无法实例化
2.只能用来充当其他类的父类。抽象的方法和属性在子类中的具体去实现
eg1:稳定的工作(抽象) 老师,公务员,医生(具体)
er2:
object class14 {
abstract class Job() {
//具体属性
var name: String = "小花"
//具体方法
def hello():Unit = {
println("hello...")
}
//抽象属性:它没有具体的属性值
var age: Int
//抽象方法:没有方法体
def sayHello():Unit
}
def main(args: Array[String]): Unit = {
}
}
eg3:
例子:
我需要会弹琴的,女生(标准)
幼师钢琴班(实现这个标准)
钢琴七级女老师(生成对象)
object class15 {
abstract class AICar() {
//抽象属性
var typeTh:String
//抽象方法
def autoRun():Unit
}//以上为定下的标准(第一段,1-9)
class XiaoMi extends AICar{
var typeTh = "视觉+雷达技术"
def autoRun():Unit={
println(s"小米公司驾驶技术")
}
}//以上为实现标准(第二段,10-17)
def main(args: Array[String]): Unit = {
val su7 = new XiaoMi()//这一句为生成对象(第三段)
su7.autoRun()
}
}