javap 자바 클래스 파일 디스어셈블러(disassembler)로 javap 명령은 하나 이상의 클래스 파일을 역어셈블함. 옵션을 사용하지 않으면 javap는 전달된 클래스의 package, protected 및 public 필드와 메서드를 출력. javap 사용법 javap [ options ] classes javap options help 도움말 ? javap에 대한 도움말 메시지를 출력 l 라인 및 로컬 변수 테이블을 출력 public public 클래스 및 member 변수만 출력 protected protected 클래스와 public 클래스 및 member 변수만 출력 package package, protected 및 public 클래스 및 member 변수만 출력(기본 설정) priva..
[아이템 7] 다 쓴 객체 참조를 해제하라 가비지 컬렉션 언어에서는 의조치 않게 객체를 살려두는 메모리 누수를 찾기가 아주 까다로움 객체 참조 하나를 살려두면 가비지 컬렉터는 그 객체뿐 아니라 그 객체가 참조하는 모든 객체를 회수해가지 못함 단 몇 개의 객체가 매우 많은 객체를 회수되지 못하게 할 수 있고 잠재적으로 성능에 악영향을 줄 수 있음 메모리 누수의 첫 번째 일반적으로 자기 메모리를 직접 관리하는 클래스라면 항시 메모리 누수에 주의해야함 객체 참조를 null 처리하는 일은 예외적인 경우여야 함(모든 객체에 적용할 필요 X) 다 쓴 참조를 해제하는 가장 좋은 방법은 그 참조를 담은 변수를 유효 범위(scope) 밖으로 밀어내는 것 예시 코드 Stack 구현 예시 코드 public class Sta..