抽象属性
package level02
object Class15 {
abstract class DreamJob() {
var money:Double
var vacation:Int
var boss:String
}
class PE extends DreamJob{
var money:Double = 14500
var vacation:Int = 4
var boss:String = "无人"
}
def main(args:Array[String]):Unit = {
val pe1 = new PE()
println(pe1.money)
}
}
package level02
object Class15 {
abstract class DreamJob() {
var money:Double
var vacation:Int
var boss:String
}
class PE extends DreamJob{
var money:Double = 14500
var vacation:Int = 4
var boss:String = "无人"
def addMoney():Unit = {
money *=1.1
}
}
def main(args:Array[String]):Unit = {
val pe1 = new PE()
println(pe1.money)
}
}
重写父类具体成员,使用override
package level02
object Class15 {
abstract class DreamJob() {
var money:Double
var vacation:Int
var boss:String
}
class PE extends DreamJob{
var money:Double = 14500
var vacation:Int = 4
var boss:String = "无人"
def addMoney():Unit = {
money *=1.1
}
override def getMoney(): Unit = {
println(s"上银行卡:${money}元")
}
}
def main(args:Array[String]):Unit = {
val pe1 = new PE()
pe1.addMoney()
pe1.getMoney()
}
}
内部类:在类的内部,写另一个类
package level02
object Class16 {
class C1 {
class B1 {
def say():Unit = {
println("B1......")
}
}
}
def main(args:Array[String]):Unit = {
val c1 = new C1()
val b1 = new c1.B1()
b1.say()
}
}