(Java 소스 분석) String 클래스
*String 클래스는 public final class 로 되어 있다.
또한 값 비교를 위한 Comparable<String>을 구현하고 있다.
*특히, 문자열을 저장하기 위해 private final char value[]; 로 되어있는데 final로 되어 있기 때문에 초기값 이후 값을 변경할 수 없다. 즉 새로운 문자열을 붙일 경우 새로운 객체를 생성해야 한다는 것을 알 수 있다. 반면에 StringBuffer은 final로 되어 있지 않다.
대신 transient가 붙어 있어 직렬화가 불가능하다.
*compareTo메소드는 문자열의 길이만을 비교한다.
또한 값 비교를 위한 Comparable<String>을 구현하고 있다.
*특히, 문자열을 저장하기 위해 private final char value[]; 로 되어있는데 final로 되어 있기 때문에 초기값 이후 값을 변경할 수 없다. 즉 새로운 문자열을 붙일 경우 새로운 객체를 생성해야 한다는 것을 알 수 있다. 반면에 StringBuffer은 final로 되어 있지 않다.
대신 transient가 붙어 있어 직렬화가 불가능하다.
*compareTo메소드는 문자열의 길이만을 비교한다.
댓글
댓글 쓰기