💡 학습 목표
|
1. 상수(constant)란 뭘까?
상수는 변하지 않는 수, 반드시 값이 초기화 되어야 하고 한번 초기화 되면 변경할 수 없게 하는 메모리 공간을 의미합니다. 이 특징 때문에 원주율 3.14, 1년의 12개월, 최대 사용 가능자의 수 등을 표현할 때 사용할 수 있습니다. 자바에서 상수를 선언하는 방법은 final 이라는 예약어를 사용합니다.
package basic.ch02;
/**
* 컴파일 시점과 --> .class 파일을 만들어 내는 과정 (javac 명령어 동작)
* 런타임 시점 --> ctrl + f11 프로그램 실행 ~~~~~~ 실행 종료까지
*
* java 명령어는 프로그램을 실행 시키는 명령어 javac 명령어는 번역하는 과정이다.
* javac 명령어는 번역하는 과정이다.
*
* 자바 언어로 코드를 작성하고 있다. JDK 도구를 설치해야 자바 프로그래밍 가능 -> 도구들이 존재 JDK --> JRE(자바 프로그램
* 실행 환경이라고 한다) JRE --> JVM(자바 가상 머신) JVM은 .class 파일을 실행 시켜주는 녀석이다. JVM은 어떤 연산을
* 거쳐 이진코드(바이너리 파일로 변환 시켜서 수행하는 녀석)
*/
public class Constant {
// 메인함수 - 코드 시작점
public static void main(String[] args) {
// 상수 선언 --> 값이 한번 정해지면 변경할 수 없는 수(값, 데이터)
final int MAX_NUM = 10;
final int MIN_NUM;
MIN_NUM = 0;
// MAX_NUM = 100; // 컴파일 오류 발생
// ctrl + s를 누르면 IDE 툴이 javac Constant.java 명령어를 수행한다.
// 명령어의 결과로 Constant.class 파일이 생성된다.
// why? JVM 이해할 수 있는 언어이기 때문에 버녁을 해주어야 한다.
System.out.println("---------------------------");
// 원주율 상수로 선언
final double PI = 3.14159;
// 원의 반지름을 상수로 선언하자.
final int RADIUS = 10;
// 원의 둘레 계산
System.out.println(2 * PI * RADIUS);
// 원의 면적 계산 (원 내부의 공간의 크기)
System.out.println(PI * RADIUS * RADIUS);
} // end of main
} // end of class
상수를 사용하면 코드의 의미가 명확해지고, 나중에 값을 변경해야 할 경우에도 쉽게 대응할 수 있습니다.
2. 리터럴(literal) 이라는 의미는 머야?
원래 100, 5, 3.14, ‘T'와 같은 값들이 '상수'인데, 프로그래밍에서는 상수를 '값을 한번 저장하면 변경할 수 없는 저장공간'으로 정의하였기 때문에 이와 구분하기 위해 상수를 다른 이름으로 불러야만 했습니다. 그래서 상수 대신 리터럴이라는 용어를 사용한다. 리터럴은 단지 우리가 기존에 알고 있던 '상수'의 다른 이름일 뿐입니다.
정리
리터럴은 소스 코드 내에서 고정된 값을 직접 나타내는 데이터입니다. 예를 들어, 10, 123, 3.14, 'A'는 모두 리터럴입니다. 리터럴은 변수나 상수에 할당되는 값 자체를 표현하며, 이 값들은 프로그램 실행 중 변경될 수 없습니다.
리터럴은 상수와 비슷해 보일 수 있지만, 리터럴은 '값 자체'를 의미하고, 상수는 '값이 저장되는 변경 불가능한 메모리 공간'을 의미합니다.
도전 과제 1
사각형의 면적을 구하는 코드를 작성해보시오 단, 상수를 선언해서 활용하세요
package basic.ch02;
public class RectangleAreaCalculator {
public static void main(String[] args) {
// 가로 길이, 세로 길이 , 단 상수 사용
// 아래에 식을 작성하시오.
final int WIDTH = 20;
final int HEIGHT = 10;
int area = WIDTH * HEIGHT;
// 결과 출력하기
System.out.println("사각형의 면적 : " + area );
// 문자열은 특별한 녀석이다. 연산을 사용할 수 있습니다.
// 문자열 + 정수, 문자열 + 실수 ....
// 위 연산에 결과 값은 ---> 문자열 리턴 된다.
}
}
도전 과제 2
삼각형의 면적을 계산하는 코드를 작성해 보자. ( 밑변 * 높이 ) / 2
package basic.ch02;
public class TraingleAreaCalulator {
public static void main(String[] args) {
// 삼각형의 밑변 BASE, 단 상수로 선언
final double BASE = 50.0;
// 삼각형의 높이 HGIGHT, 단 상수로 선언
final double HGIGHT = 70.0;
// 결과 값을 area 변수에 저장
double area = (BASE * HGIGHT) / 2;
// 결과 출력하기
System.out.println(" 삼각형의 면적 : " + area );
}
}
'Java > JAVA 1 - 기초문법' 카테고리의 다른 글
JAVA - 연산자(항, 대입, 부호) (0) | 2024.04.09 |
---|---|
명령어를 통한 컴파일, 실행 (0) | 2024.04.09 |
JAVA - 형 변환(type casting) (0) | 2024.04.09 |
JAVA 기본 - 데이터 타입 (0) | 2024.04.08 |
JAVA 설명, 변수선언 (0) | 2024.04.08 |