내 앱에서 정적 변수를 사용하고 있습니다. 내 질문은, 내가 애플 리케이션을 종료 할 때 그들은 여전히 메모리에있을 것입니다 ..? 그렇다면이 문제를 어떻게 해결할 수 있습니까? 미리 감사드립니다.정적 변수, 수명은 어떻게됩니까?
답변
정적 변수는 클래스가 클래스 로더에 의해로드 될 때로드되는, 제거 할 것 when it is Unloaded
응용 프로그램이 중지 된 후에 변수가 메모리에 남아 있지 않습니다.
정적 변수는 클래스와 연결되어 있으며 클래스가 메모리에있는 동안 지속됩니다 (응용 프로그램이 종료되면 존재하지 않음).
을 깨끗하게 할 수 없다거나 클래스가 언로드되면 (매우 드물게 발생한다) 생각한다. – Thilo
정적 변수는 클래스가 JVM에로드되는 동안 지속됩니다. JVM에서 클래스의 인스턴스가 더 이상 실행되지 않으면 클래스가 언로드되고 정적 변수가 가비지 수집을 위해 적합 할 것입니다.
인스턴스가없는 경우에도 클래스는 언로드되지 않습니다. 전체 클래스 로더가 사라질 때만 언로드됩니다. – Thilo
때때로 모든 개체에 공통적 인 변수가 있어야합니다. 이 작업은 static modifier
으로 수행됩니다. Fields that have the static modifier in their declaration are called static fields or class variables
. They are associated with the class, rather than with any object
. Every instance of the class shares a class variable, which is in
메모리의 고정 위치가입니다. 모든 객체는 클래스 변수의 값을 변경할 수 있지만 클래스 변수를 만들지 않고도 클래스 변수를 조작 할 수 있습니다.
인스턴스가 사용되지 않으면 가비지 수집기가이를 파괴합니다. 인스턴스가 메모리에서 지워진다는 의미입니다.
다른 답변 외에도 정적 "변수"가 실제로 "정적 최종"원시 상수 인 경우 실제로는 별개의 엔터티로 존재하지 않지만 그 값은 모두로 컴파일됩니다. 그것들을 사용하는 클래스 (그것들을 정의하는 클래스 뿐만이 아니다).
내 앱에서 정적 변수를 사용하고 있습니다.
정적 변수는 자동 메모리 관리자로부터 영향을받지 않으므로 onDestroy
메소드 (Android)에서 null로 설정해야합니다. 그들은 수업에 속하며 정확하게 그것은 @ Jigar Joshi으로 작동합니다.
여기에는 'Android'에 대한 언급이 없습니다. –
sry man, my fault, classic java에서도 똑같이 null로 설정해야합니다. – Sajmon
C/C++ 인 경우 garbages를 수집하지 않으면 메모리 관리 프로그램을 사용해야합니다. 이 자바 인 경우, 메모리와 가까운 JVM에서 어떤 "javaw를"프로그램을 종료
도 C/C++에서 프로세스가 종료되면 (이 질문에 대한 것이면) OS는 모든 메모리를 해제합니다. – Thilo
정적 변수는 클래스 변수와의 방법이라고 클래스가로드 될 때로드 된 클래스. 클래스가 언로드 될 때 언로드됩니다. 클래스가로드 될 때, 예를 들어
private int classinVar;
같은 클래스 변수가 자동으로 기본값으로 초기화됩니다, 당신은 그 클래스의 정적 필드와 문맥 갈 것 signout 얻을 때 동일한 개념은 signout 함께. 모두 정적 변수 변수 클래스이라는 질문에 말했듯이 차기 독자
는
을 설문. 클래스가 JVM에서 언로드되지 않을 때까지 메모리에 남아 있습니다.우리가 다음 응용 프로그램을 닫을 때 완전히 종료하지 않는 것을 보았다 안드로이드에서
, 그것은 당신이 길게 누르면 (대부분의 장치) 홈 버튼을 볼 수있는, 최근의 애플리케이션 스택에 남아 있습니다.
안드로이드에서Android itself kicked out those recent apps when the other app needs memory
,
-You force stop your app.
-Application crashes.
-You clear your app data.
-Switch off your Device.
-Android kicked out recent app
- 1. WCF에서 AppDomain의 수명은 어떻게됩니까?
- 2. PhoneGap 플러그인의 수명은 어떻게됩니까?
- 3. 선택기의 수명은 어떻게됩니까?
- 4. Android : ContentProvider의 수명은 어떻게됩니까?
- 5. Silverlight 2의 수명은 어떻게됩니까?
- 6. ASP.NET MVC 컨트롤러의 수명은 어떻게됩니까?
- 7. PHP 세션의 기본 수명은 어떻게됩니까?
- 8. Google 캘린더 가제트의 수명은 어떻게됩니까?
- 9. 정적 클래스에있는 필드의 수명은 얼마나됩니까?
- 10. kCLLocationAccuracyThreeKilometers와 함께 CLLocationManger를 사용하면 iPhone의 배터리 수명은 어떻게됩니까?
- 11. Mac 개발자 ID로 서명 한 인증서의 수명은 어떻게됩니까?
- 12. 참조 매개 변수에 임시로 바인딩 된 기본 인수의 수명은 어떻게됩니까?
- 13. 프로토 타입 상속을 사용하는 자바 스크립트 코드에서 객체 수명은 어떻게됩니까?
- 14. 의 범위, 비 정적 변수 및 방법
- 15. Seam의 정적 변수 범위
- 16. 정적 링크 FreeImage 라이브러리는 어떻게됩니까?
- 17. PHP의 정적 변수 변수
- 18. JSP, 호스트 모드의 정적 변수, 정적 변수
- 19. 정적 변수
- 20. 정적 메소드와 정적 변수 자바
- 21. F의 "S ..."수명은 무엇입니까?
- 22. 인스턴스 변수 또는 정적 변수?
- 23. 정적 변수 대 애플리케이션 변수
- 24. 정적 객체를 정적 객체가 아닌 객체에 할당하면 어떻게됩니까?
- 25. C# : 정적 메서드가 여러 스레드에서 호출되면 어떻게됩니까?
- 26. 자바 정적 클래스/변수
- 27. ObjectiveC의 정적 변수
- 28. Monodroid의 정적 변수
- 29. 정적 변수 링크 오류
- 30. 정적 변수, 별도의 컴파일
는 "signout"무엇을 의미합니까 핑할 때는 정적 변수 언로드? 프로그램/프로세스/JVM을 종료 하시겠습니까? – Thilo
@Thilo 나는 그가 안드로이드 애플 리케이션에 대해 이야기하고 있다고 생각한다 ... 그, Raghav를 지정하십시오. – brimborium
더 많은 예제를 제공 할 수 있습니까? 또는 나는이 질문이 오래 머무를 것이라고 믿지 않는다. – kommradHomer