728x90
반응형
SMALL

단 하나의 값을 저장할 수 있는 메모리 공간

  • 변수 공간에 기록된 값은 고정되어 있지 않고, 다른 값이 기록되면 자동으로 덮어 씌워질 수 있다.
  • 메모리 공간은 정보처리의 기초단위인 1Byte로 구성되어 있다.
  • 메모리 공간은 각각이 구분될 수 있도록 메모리 주소’를 가지고 있다.

메모리 값을 저장하거나 읽을 때 해당 메모리 주소를 사용해야 하는데
사람이 사용하기에는 불편하기 때문에 특정 메모리 영역에 이름을 붙이고 주소 대신에 이름을 사용해서 메모리에 값을 저장하고 읽을 수 있게 한 것이 변수이다.

변수의 선언

  • 메모리에 값을 저장할 공간을 마련하기 위해서 선언!
  • 선언방법 : 변수타입 변수이름;
    • int age; int num; or int age, num;
    ⇒ 정수형인 나이와 숫자를 선언한다!!

변수 생성규칙

  • 대소문자가 구분되며 길이에 제한없음
  • 예약어 사용불가
  • 숫자로 시작 불가
  • 특수 문자 ‘ _ ‘ ‘ $ ’만 허용

변수의 여러가지 형태

  • Camel case
    • carTest
  • Snake case
    • var_test
  • pascal case (Java에는 클래스명만 대문자로 시작하자는 암묷적인 규칙이 있어서 추천 X)
    • VarTest
  • Kebab case (Java에서는 변수명에 - 기호 사용 불가)
    • Var-Test

변수의 초기화

  • 변수에 값을 저장하는 방법 : 변수타입 변수이름 = 값;
    • ina age; age = 23; or int age = 23; or int age = 23, num = 32768;
  • 초기화 : 변수에 처음으로 값을 저장하는 것을 의미한다.
class Variable1_2 {
	public static void main(String[] args) {
		boolean flag = false;
		char grade = 'A';
		byte val = 127;
		short sval = 128;
		int num = 32768;
		long price = 2_147_483_648L;
		float tax = 3.14f;
		double score = 3.14159265358979;   
		 System.out.println("boolean = " + flag);
		    System.out.println("char = " + grade);
		    System.out.println("byte = " + val);
		    System.out.println("short = " + sval);
		    System.out.println("int = " + num);
		    System.out.println("long = " + price);
		    System.out.println("float = " + tax);
		    System.out.println("double = " + score);
	}
}

변수의 값 읽기

class Variable1_3 {
    public static void main(String[] args) {
        int year, age = 23;

        year = age + 2000;
        System.out.println("year = " + year); // 2023

        // 변수의 값을 읽어오는 과정
        // year = age + 2000;
        // year = 23 + 2000;
        // year = 2023;

        age = age + 1;
        System.out.println("age = " + age); // 24
        System.out.println("year = " + year); // 2023

        // 변수의 값을 읽어오는 과정
        // age = age + 1;
        // age = 23 + 1;
        // age = 24;
        // 프로그램은 순차적으로 코드가 실행되기 때문에
        // 여기서 age의 값이 바뀌었다고 year에 영향을 주지 않는다.
    }
}

변수의 종류

class Variable1_4 {
    static int classVal = 100; // 클래스 변수
    int instanceVal = 200; // 인스턴스 변수

    public static void main(String[] args) {
        int num; // 지역 변수
//        System.out.println("int = " + num); // Error 발생
        num = 300;
        System.out.println("int = " + num); // 100

        // 인스턴스 변수
//        System.out.println("instanceVal = " + instanceVal); // Error 발생
        Variable1_4 instance = new Variable1_4 (); // 인스턴스 변수 사용을 위해 객체 생성
        System.out.println("instanceVal = " + instance.instanceVal); // 100

        // 클래스 변수
        System.out.println("classVal = " + classVal);
        // 같은 크래스 내부는 바로 접근 가능
        System.out.println("Main.classVal = " + Variable1_4.classVal);
        // 클래스 변수 : 클래스명.클래스변수명 으로 접근 or
    }
}

 

728x90
반응형
LIST

'개발 > JAVA' 카테고리의 다른 글

기본형과 참조형  (2) 2023.01.18
상수와 리티럴  (0) 2023.01.18
JVM  (0) 2023.01.18
Hello World!  (0) 2023.01.18
Swing  (0) 2023.01.09

+ Recent posts