component
component
是组件的, 一个类作为,另外一个类的补充.
主类可以调 用组件类的public
函数和protected
函数.
可以在组件类声明虚函数, 然后在主类中实现该函数, 在主类中可以可以通过base
来调用组件类的虚函数实现.
PS: 不存在纯虚函数
简单例子
bar.gs
string world = "world";
public string bar()
{
return "World";
}
string bar1()
{
return "World";
}
private string bar2()
{
return "World";
}
protected string bar3()
{
return "World";
}
public virtual string foo_bar()
{
write ("bar\n");
}
foo.gs
component .bar;
public string foo()
{
return "Hello ";
}
public override void bar.foo_bar()
{
write(foo());
base.foo_bar(); // 调用 bar.gs中的实现
}
write(foo(), bar());
foo_bar(); // 输出 Hello World
// bar1(); // error, 默认函数为private
// bar.bar2(); // error, 无法访问private函数
bar.bar3(); // OK, 可以访问protected函数
// bar.world; // error, 不可以访问其他脚本中的成员变量
component路径
component的路径和import完全一致.