gpt4 book ai didi

haxe - static private、private、static public、public的区别

转载 作者:行者123 更新时间:2023-12-02 06:55:07 24 4
gpt4 key购买 nike

有人能解释一下 Haxe 语法在函数和变量方面的区别吗?

public var theName;

对比

static public var theName;

static private var theName;

对比

private var theName;

和 ex 的功能相同。

static private function(){}private function(){}

最佳答案

有两个作用域

static

指的是类(class)。即可以通过类引用和名称来引用。

ClassName.reference();

会是:

class ClassName{
static public function reference(){
return "hello world";
}
}

另一个,它指的是使用 new 运算符构造的类实例。

new ClassName().reference();

这将是:

class ClassName{
public function new(){
//We need a constructor.
}
public function reference(){
return "hello world"
}

另一个是选择:

public / private

指的是引用在类型范围之外的可用性。

private function reference(){
return "hello world";
}

只有在 this 变量引用相关类实例的地方调用时才可用。所以:this.reference() 编译但 new ClassName().reference() 不会。

static private function ....

有类似的效果,因为它只在类是本地的地方可用

class MyClass{
private static function unavailable(){
return "available";
}
public static function available(){
return something();
}
}
class Main(){
static public function main(){
MyClass.unavaliable()//will not compile
MyClass.available()//good to go.
}
}

关于haxe - static private、private、static public、public的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33218493/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com