모든 요소(메소드, 변수)는 클래스 내부에 존재한다. JAVA의 char type은 2바이트이다. ( 0 ~ 2^16 값의 범위를 가짐 ) 1바이트를 표현하기 위해 byte type이 존재한다.( -2^7 ~ 2^7-1 값의 범위) static 메소드들은 객체생성
Wrapper Class.valueOf 는 내부에 캐시를 이용하며 값의 범위가 있다. 만약 생성하려는 값이 범위 안에 있으면 캐시에서 객체를 가져오고, 범위 밖에 있으면 new로 객체를 생성하여 리턴하는것이다.String 객체의 문자열은 생성이 되면 이후 변경되지 않는
JAVA에서는 클래스에 대한 변수는 모두 레퍼런스이다.모든 클래스(사용자 정의 클래스 포함)는 SUPER 클래스로 Object 클래스를 상속받는다. ( "extends Object" 가 생략 되어있다고 보면됨)JAVA는 "Call by Value" 이다.하나의 소스파일
static 변수는 해당 클래스 정보가 가상머신에 의해 읽히는 순간(클래스 로딩) 메모리 공간에 할당되고 초기화 된다.즉, static이 먼저 정의되기 때문에 static이 로딩되는 시점에선 인스턴스 객체가 정의되지 않았기에 호출할 수 없다.static 메소드는 thi
자바 String 타입 변수의 length는 0이다.따라서, charAt(0) 메소드의 결과가 에러가 나오는 것이다. (StringIndexOutofBoundsException)
안드로이드를 개발하면서 onClick 메소드를 주로 anonymous class로 정의하여 사용한다.이때 anonymous class 내부에서 외부 스택 변수를 참조할 때 오류가 발생하는 조건이 있다.JAVA8 이전에는 외부 스택 변수를 final 변수로 선언하거나,