AS2.0에서 static변수 관련 궁금해요 ㅠㅠ
큰나라
static 으로 정의한 변수는.. 클래스를 직접 제어해서 인가요?
변수들이 새로 초기화되지않고 기존에 변경된 변수값이 그대로 남아있네요?
처음에 정의했던 값으로 변경할라면 어떻게 하나요.
예를들어..
// A.as
class A {
static var aaa:Number = 1;
}
// 프레임액션
A.aaa = 2;
이러고나면 aaa 는 2가 되는데 새로 객체를 생성하면 2로 되어있네요.
다시 원상복귀하려면 방법없나요?
static변수의 특징인가..ㅠㅠ
private 변수는 새로 객체를 만들때 초기값으로 시작하는데.. static은 안그렇네요.
-
큰솔
죄송해요.. 늦어서 ㅠㅠ
-
가을
하핫..감사합니다.. ^.^ 수다님 오신거 기억하고 있습니다.. ㅂ.ㅈ.ㅎ 님..
-
핫블루
감사합니다 수다님^^ 수다님의 세미나를 들었던 사람이예요^^ 플래시라이트1.1 베이직 세미나 멋지셨습니다^^
-
겨슬
수다님 말씀대로, static 으로 선언하게 되면, 객체가 할당되는 메모리와는 별도의 공간에 데이타가 위치하게됩니다. 그래서 static 으로 선언했을 경우의 장점은 객체를 생성하지 않아도 접근해서 쓸 수 있다는 점이고. 단점은 항상 메모리를 차지하고 있기 때문에, 메모리 낭비의 우려가 있다는 점입니다.
수다님 말씀대로 static 변수는 사용하기 편하기는 하지만, 되로록 자제하는 것이 좋습니다. -
루리
역시 수다님^^ 감사합니다. 그렇군요. 게임같은경우 또 replay하게될경우는 static변수를 싹다 직접 초기화해줘야 되는군요. 왠만해선 static변수를 쓰지 않아야겠어요 ㅠㅠ 힝
-
무리한
static 변수는 정적변수라합니다 그것은 한번 실행될때 그 값을 계속 가지고있게됩니다..
즉 처음 읽혀질때 가지고 있던값을 그대로 가지고 있는다는 말이죠...
플래쉬 파일이 꺼지지 않는이상 그 값은 변하지 않습니다..
초기 값을 가지고 있을수도 없지요 어떤 프로그램이던지 static 변수는 사라지지도 초기화 되지도 않습니다..
변수 나름대로의 특징이죠 프로그램상에서 그 프로그램이 꺼지기 전까지 변수는 사라지지 않습니다...
설명이 제대로 됫나 모르겠네