class Man extends People{
var sex:Boolean;
}
2、從抽象類或者接口繼承,也用 extends 關鍵字,接口中的方法必須重載,用 override 關鍵字
class Hello extends IHello{
var people: People;
override function Greeting():Void {
println("Hello {people.name} ,You are {people.age} years old.");
}
}
3、JavaFX 可以多重繼承,即繼承多個類和多個接口
三、對象的創建
JavaFX 一般用字面量方式創建對象,也可以用 new 例如
var p = new People();
或者
var p = People{
name:"小明"
age:18
}
四、對象的初始化
1、JavaFX 的類沒有構造函數,但是有一個 init 初始化塊,當對象創建以后會運行這個塊里的代碼,例如
class People {
init {
name="Jone";
println("Hello {name} ,You are {age} years old.");
}
var name: String;
var age: Integer;
}
var p = new People();
輸出:Hello Jone ,You are 0 years old.
2、還有一個 postinit 塊,在所有初始化工作完成以后執行
3、isInitialized 函數,判斷一個成員是否被初始化了,例如
class People {
var name: String;
var age: Integer;
init {
//檢查 name 是否被初始化
if (isInitialized(name)){
println("Hello {name}.");
}else {
println("What's your name?");
}
}
}
//創建對象的時候初始化 name
var p = People{
name: "Jone"
}
輸出:Hello Jone.
//創建對象的時候沒有初始化 name
var p = People{
age: 18
}
輸出:What's your name?