ООП
Поговорим про наследование, ведь zenScript считается полноценным ЯП.
Создадим virtual
класс myEntity
, у которого будет параметр имени и метод move
, не имеющий пока что действий.
Пример
public virtual class myEntity {
public val name as string;
public this(name as string) {
this.name = name;
}
public move() as void {
}
}
virtual
означает, что мы сможем переопределить функции класса и сам класс. Создадим новый класс myFish
и через :
напишем myEntity
. :
- это будет значить, что мы наследуемся от следующего класса.
Пример
public class myFish : myEntity {
public this() {
super("bat");
}
}
Про suepr
прочитайте в документации по Java. Переопределим наш метод move
из класса myEntity
в классе myFish
с помощью override
. Сделаем так, чтобы при вызове метода move
в консоль выводилось какое-то сообщение.
public override move() {
println("Существо " + this.name as string + " перемещается !");
}
Если мы вызовем данный метод, нам напечатается сообщение в crafttwekaer.log
.
Пример
new myFish().move();
Полный Код
public virtual class myEntity {
public val name as string;
public this(name as string) {
this.name = name;
}
public move() as void {
}
}
public class myFish : myEntity {
public this() {
super("bat");
}
public override move() {
println("Существо " + this.name as string + " перемещается !");
}
}
Last updated