codecamp

Haxe类继承:通过extends关键字实现代码重用

Haxe 的类继承

在 Haxe 中,类可以通过 extends 关键字继承其他类。这种关系通常被描述为“is-a”:任何 Point3 类的实例也是 Point 类的实例。Point 被称为 Point3父类,而 Point3Point子类。一个类可以有多个子类,但只能有一个父类。

以下是一个简单的继承示例:

class Point3 extends Point {
    var z:Int;


    public function new(x, y, z) {
        super(x, y); // 调用父类的构造函数
        this.z = z;
    }
}

继承的关键点

  • extends 关键字:用于声明一个类继承自另一个类。
  • super() 调用:在子类的构造函数中,必须调用父类的构造函数 super()super() 可以出现在构造函数的任何位置,不一定要是第一个表达式。

方法重写

子类可以重写父类的方法,这需要使用 override 关键字。重写方法的效果和限制将在后续章节中详细介绍。

final 关键字

从 Haxe 4.0.0 开始,类可以使用 final 关键字声明,以防止它们被继承。

final class FinalClass {
    // 类内容
}

趣味性信息::final 元数据



在 Haxe 4 之前,可以使用 :final 元数据来标记类为 final。

总结

继承是面向对象编程中的一个重要概念,允许你创建具有相同属性和方法的类层次结构。通过继承,你可以重用代码并创建更具体的类。如果你对 Haxe 的类继承感兴趣,可以尝试编写一个简单的继承示例来练习!

Haxe类构造函数:初始化对象的关键方法
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }