В ActionScript переменные - это именованные дескрипторы, которые можно использовать для получения объектов и данных. У переменных есть нечто, называемое scope , которое указывает, в каких частях кода дескриптор является допустимым.
Когда вы создаете переменную внутри функции, ее область действия - эта функция. То есть этот конкретный именованный дескриптор можно использовать только внутри этой функции.
В своем коде вы создаете дескриптор с именем myLabel
и помещаете в него Label
- назовем его Label123
. Затем вы помещаете Label123
в список элементов MyGroup
, что дает MyGroup
дескриптор, прикрепленный к Label123
. Затем функция заканчивается, и дескриптор с именем myLabel
больше не может использоваться. Label123
все еще существует, потому что MyGroup
имеет дескриптор.
Если вы создадите myLabel
как переменную класса private
или protected
, этот дескриптор можно будет использовать из любой функции внутри MyGroup
. Если вы создадите ее как переменную класса public
, она будет использоваться в любом месте внутри MyGroup
, а также в любом месте кода, где у вас есть экземпляр MyGroup
. (И если вы создадите ее как переменную класса internal
, она будет использоваться в любом месте пакета MyGroup
.)