본문 바로가기
웹 프로그래밍 기초/자바기반의 웹&앱 응용SW 개발자

자바기반의 웹&앱 응용 SW개발자 양성과정 10일차 -19

by oncerun 2020. 3. 10.
반응형

상수형 변수를 왜 사용해야 하는가?

상수형 변수를 사용할지는 프로그래머 마음이지만,

가시적으로 코드를 가다듬을 때 자신들을 위한 정리라고 생각하면 될 것 같다.

		final int HEIGHT ;  //대입값을 고정시키기위해
		final int WIDTH;
        final int SMAP =1;
		final int MMAP =2;
		final int LMAP =3;
        switch (menu) {

		case MMAP:
			HEIGHT = 40;
			WIDTH = 20;
			break;
		case LMAP:
			HEIGHT = 60;
			WIDTH = 30;
			break;
		case SMAP:
		default:
			HEIGHT = 20;
			WIDTH = 20;
		}//swich

코드 부분 중 상수형 변수만 사용된 부분만 가져왔는데.

상수형 변수에 final이라는 예약어를 사용해서 선언해주는데

관례적으로 일반 변수와 구분하기 어려우므로 전부 대문자로 처리해준다.

 

FINAL은 무엇인가?

나무 위키가 정의하는 FINAL이다

the final keyword is used in several contexts to define an entity that can only be assigned once.

final 키워드는 엔티티를 한 번만 할당합니다. 즉, 두 번 이상 할당하려 할 때 컴파일 오류가 발생하여 확인이 가능합니다.

즉 처음 값을 할당하면  다시 그 변수에 값을 할당하면 오류가 발생하게 됩니다.

 

오류 내용

The final local variable 변수 이름 cannot be assigned. It must be blank and not using a compound assignment

 

Final variables

final long MINUTE = 60000;

Final variables는 final 지시어를 이용해 Immutable 선언

Java에서는 상수를 선언할 때 final을 이용하여 Read-Only로 설정할 수 있습니다. 즉 한 번 선언한 뒤 변하지 않는 Immutable 형식이라는 것을 명시적으로 표현할 수 있습니다.

 

Final을 사용할 때?

final의 사용 유무는 각 작성자들에게 달려있습니다.

프로젝트를 할 때 코드를 이해를 잘하고 작성한다면 문제없이 코딩이 가능하지만,

final을 씀으로써 다른 사람들과 오해를 최소화하고 도움을 줄 수 도 있을지 모릅니다.

final은 기본적으로 코드 가독성을 해치지 않고 명시적으로 final 선언이 필요한 부분에서만 사용을 하라고 권유하고 있습니다. 각 사람들과 논의를 거쳐 합의점을 찾아 사용하면 될 것 같습니다.

 

결론

JAVA에서 FIANL은 불변의 속성을 선언하는 지시어이며 클래스, 함수 , 변수가 자신도 모르게 값이 변해

오류를 막고자 제공하는 지시어이다.

 

반응형

댓글