본문 바로가기

Java3

[Java] final 키워드 final 키워드 final이 가지는 사전적 의미는 최종적인 이다. 값을 변경할 수 없지만(메모리 위치가 변경되지 않는다) 최초 선언시 값을 초기화 시킬 수 있다. final 키워드를 변수, 매개변수, 메소드, 클래스, 상수(static final) 에 사용할 수 있는데 변수에 선언시 2가지의 방법을 통해 수정이 가능하다. 1. final 변수 선언 시 2. 생성자를 통해 public class Member { final String nation = "Korea"; // 변수 초기값 지정 final String id; final String age; public Member (String id, String age) { // 생성자를 통해 초기값 지정 this.id = id; this.age = age;.. 2020. 5. 2.
[Java] String, StringBuffer, StringBuilder의 차이점 String String은 내부의 문자열을 수정할 수 없다. (private final char value[]) 문자열 결합 연산자를 사용할 때마다 메모리 힙 영역에 새로운 객체가 생성되면서 재 참조하게 된다. String str = "A";// A str += "B";// AB 문자열 AB를 출력하기 위해 메모리 힙 영역에 객체가 2개가 생성되었다. for문 or while문으로 문자열 결합 연산자를 사용하게 되면 반복 횟수만큼 객체가 새로 생성되기 때문에 메모리 영역 관리에 굉장히 비효율 적이다. 물론 String 또한 객체이기 때문에 힙 영역에 저장되어 Garbage Collector의 관리 대상이 되긴 하지만 GC가 호출되기 전까지 생성된 String 객체들은 힙 영역에 계속 쌓여 있기 때문에 메.. 2020. 5. 2.
The blank final field real may not have been initialized #원인 - final 키워드를 사용하여 변수를 선언 할 때 초기값을 지정하지 않으면 나오는 에러 #해결방법 - 변수 선언시 초기값을 지정해준다. - 생성자를 통해 초기값을 선언해준다. (변수에 값이 선언되어 있을 때는 생성자로 초기값 지정 불가) 2020. 4. 29.