sub_title
 개발자마당
제   목 (JAVA) 자바 상수 (final) 사용이유와 방법
작성자 고구마 등록일 2017-04-28 08:10:41 조회수 2,008
3개의 숫자를 입력받아 합계와 평균을 출력하는 프로그램은 다음과 같다.

20번째 줄에서 평균을 구할 때 직접 숫자를 넣어 값을 구하고 있다. 짧은 코드라면 큰 지장이 없겠지만, 코드가 방대해지면 이 3의 의미를 알기 힘들어지고 잘못 수정하는 경우 원하는 결과를 얻지 못할 우려가 있다. 이를 방지하기 위해 3과목의 평균을 구하는 역할만을 한다면 3을 상수로 저장해 이후 수정을 하지 못하도록 final 키워드를 제공하고 있다.

import java.util.Scanner; public class Final { void printfSumAndAverage(){ final int CLASS_CNT = 3; Scanner input = new Scanner(System.in); System.out.println("Input 3 numbers"); double num1 = input.nextDouble(); double num2 = input.nextDouble(); double num3 = input.nextDouble(); double sum = num1 + num2 + num3; System.out.println("sum : " + sum); double avr = (num1 + num2 + num3) / CLASS_CNT; System.out.println("avr : " + avr); } }

final 예약어를 이용해 CLASS_CNT 변수를 선언한다.
상수임을 표현하기 위해 모두 대문자로 입력한다. 이렇게 하면 카멜케이스처럼 대소문자로 단어의 구분을 할 수 없기 때문에 단어 사이를 '_'로 구분하도록 작명한다.


다음과 같이 CLASS_CNT에 값을 처음 할당하면 이후에 해당 변수의 값을 변경할 때 에러가 발생하게 된다. 의도치 않은 값의 변경을 사전에 예방하는데 효과적이다.

 


 
0
    
 
0
        list
 
※ 짧은 댓글일수록 예의를 갖추어 작성해 주시기 바랍니다.
line
reply cancel
 
번호 제목 글쓴이 추천 조회 날짜
31  자바(Java) 외부 프로젝트 공유(Share) 하기 이미지   member 고구마 0 / 0 1821 2017-04-29
30  SQL Injection 이미지   member 고구마 0 / 0 20986 2017-04-29
29  (JAVA) 자바 리터럴(Literal) 의미와 용도 이미지   member 고구마 0 / 0 2644 2017-04-28
28  (JAVA) 자바 상수 (final) 사용이유와 방법 이미지   member 고구마 0 / 0 2008 2017-04-28
27  (JAVA) 자바 스캐너(Scanner)로 파일 내용 읽어오기 이미지   member 고구마 0 / 0 4253 2017-04-28
26  리눅스 환경에 설치된 톰캣 재시작하기 이미지   member 높이뜬새 2 / 1 12519 2015-10-27
25  다음과 같은 에러가 발생할때 write failed: No space left on device (28) in Unknown on lin..   member 높이뜬새 1 / 1 4350 2015-07-09
24  sendmail 시작 재시작 종료하기   member 높이뜬새 0 / 0 4687 2015-06-29
23  find 명령어로 찾을 문자열이 들어간 파일찾기   member 컴퓨터존 3 / 0 19854 2010-03-04
22  아파치 재시작 없이 로그 삭제하기   member 컴퓨터존 0 / 0 18454 2010-03-04
21  IIS에서 FLV파일 MIME 타입 등록하기 이미지   admin 웹마당넷 1 / 0 12071 2009-11-27
20  동영상 트래픽 계산하기   member 컴퓨터존 0 / 0 10934 2009-11-18
19  리눅스계정 생성과 삭제 이미지   member 높이뜬새 0 / 0 8577 2009-08-26
18  리눅스에서 tar를 이용한 계정백업하기 이미지   member 높이뜬새 0 / 0 6100 2009-08-22
17  php파일로 실행될 확장자 추가하기   member 컴퓨터존 1 / 0 16613 2009-03-18
16  다음과 같은 에러가 발생할때 Could not reliably determine the server's fully qualified do..   member 높이뜬새 6 / 1 68556 2009-03-17
15  웹프로그래밍 언어별 리퍼러(referer) 구하기   admin 웹마당넷 2 / 0 44597 2009-03-05
14  방금 알게된 새로운 사실!! 윈도우 또는 alert 경고창 내용 복사   member 사라마음 2 / 0 6347 2009-02-15
13  특정 포트(PORT)가 열려있는지 확인하는 방법   member 컴퓨터존 1 / 1 104421 2009-01-22
12  URL이란?   admin 웹마당넷 1 / 0 10816 2009-01-14
11  명령어 프롬프트 창에서 IIS 시작,중지,리스타트하기   member 컴퓨터존 1 / 2 25552 2008-12-11
10  아파치(apache) 시작,중지,리스타트하기   member 컴퓨터존 4 / 3 104383 2008-12-08
9  Windows 미디어 서비스 HTTP 서버제어 프로토콜 활성화 이미지   admin 웹마당넷 0 / 0 5738 2008-09-27
8  리눅스(Linux) 쉘 상태에서 웹서버 접속자 수 알아내기   member 컴퓨터존 0 / 0 3197 2008-09-04
7  [서버운영] 웹 해킹 흔적을 찾는 간단한 find 명령어   member 파도 0 / 1 4117 2008-07-02
write
button [1] [3] button