로딩
요청 처리 중입니다...

자바 프로그래밍 #1

 자바 프로그래밍 #1

# 불변성 (Immutability) : 해당 객체의 정보가 변하지 않는 것 불변(immutable) 클래스란 인스턴스가 변경되지 않는 클래스를 가리킨다. 자바 플랫폼에서 String, 박싱(boxing)된 원시 클래스, BigInteger, BigDecimal이 이러한 불변 클래스에 해당한다.

불변 클래스의 장점은 변하는(mutable) 클래스보다 설계, 구현 및 사용이 쉽다는 점이다. String s = "0"; for (int x = 1; x < 10; x++) { s = s + x; } >> s = "0123456789" 하지만 String 객체는 불변성을 가지기때문에 String 객체 10개 생성된다. (0 01 012 0123 01234 ... 01234567890) 새로운 String을 만들 때 JVM에서는 그 객체를 "String 풀" 이라는 메모리 공간에 할당한다.

새로 생성된 String의 값은 변경할 수 없고, 대신 이후에 동일한 String 값이 들어오게 되는 ...