자바 프로그램은 운영체제상에서 바로 실행되는 것이 아니라 JVM 위에서 실행된다. java.lang 패키지에 속하는 System 클래스를 사용하여 모든 운영체제의 기능은 아니지만 일부 기능은 사용할 수 있다.
System.exit(0);
자바는 JVM이 알아서 메모리를 자동으로 관리한다. JVM에게 쓰레기 수집기를 가능한한 빨리 수행해달라고 요청하는 코드가 바로 System.gc() 메소드이다. 이렇게 하면 바로 쓰레기 수집기가 실행되는건 아니지만 가능한한 빠른 시간내에 수행하려고 노력한다.
System.gc();
equlas는 원래 Object 의 번지 비교 메소드지만 String 클래스가 오버라이딩을 해서 문자열을 비교하도록 바꾼 것임
주로 영어로 된 두 문자열을 대소문자 관계없이 비교할 때 사용된다. equals 메소드와 주로 이용되는데 대.소문자 중 한 가지 형태로 변경 후 비교를 해야한다. 그러나 equalsIgnoreCase() 메소드를 사용하면 이 작업이 생략된다.
문자열을 결합하는 + 연산자를 많이 사용할 수록 그만큼 String 객체 수가 늘어나기 때문에 프로그램 성능을 느리게 하는 요인이 된다. StringBuilder 또는 StringBuffer는 내부 버퍼(buffer: 데이터를 임시로 저장하는 메모리)에 문자열을 저장해 두고, 그 안에서 추가, 수정, 삭제 작업을 할 수 있도록 설계되어 있다.
StringBuilder와 StringBuffer의 사용 방법은 동일하지만 차이점은 StringBuffer는 멀티 스레드 환경에서 사용할 수 있도록 동기화가 적용되어 있어 스레드에 안전하고 StringBuilder는 단일 스레드 환경에서만 사용하도록 설계되어 있다.
박싱: 기본 타입의 값을 포장객체로 만드는 과정
언박싱: 포장 객체에서 기본 타입의 값을 얻어내는 과정
박싱 처리를 해주려면 생성자를 이용하거나 각 포장 클래스마다 가지고 있는 정적 valueOf() 메소드를 사용하면 된다
언박싱 처리를 위해선 다음과 같은 이름으로 된 메소드를 호출한다.
"기본타입명+Value()"
포장 클래스 타입에 기본값이 대입될 경우 자동 박싱이 발생함.
기본 타입에 포장 객체가 대입될 경우 자동 언박싱이 발생함.