表示父类A包含受保护的方法f():
public class A {
protected function f():void
{
}
}
public class B extends A{
}
当我创建一个mxml并创建一个B实例时,导入所有A和B(在同一个包中)
B b = new B();
//the problem :
b.f(); // inaccessible method !!
答案 0 :(得分:1)
这是预期的。您需要阅读有关OOP的更多信息。
你在这里缺少的是尝试在A的实例上调用f()会产生相同的效果。根据定义,只有公共方法是可调用的。受保护的方法仅可用于子类和超类的实现中的调用和覆盖,它们不是公共的,因此它们不能在子类范围之外的实例上调用。受保护的非常类似于私有方法,除了它们可用于子类范围内的调用和覆盖。