Java, 변수

nana·2024년 7월 9일
0

JAVA

목록 보기
1/5

Java

1) 특징

1. 플랫폼(운영체제) 독립적

  • 장점 : class file format이 JVM을 거쳐 운영체제에 맞게 컴파일 됨
  • 단점 : 컴파일 과정을 거치므로 속도가 느림

2. OOP (객체지향언어)

  • 재사용성이 뛰어남
  • 유지보수 용이

3. Simple & Easy

  • 클래스 상속은 단일 상속만 지원
  • 포인터 지원하지 않음 (직접적으로 메모리 접근을 못하게 함)

4. Garbage Collector

  • Heap 메모리 영역의 객체들을 정리해줌

5. Database Independent

  • JDBC interface를 이용하면 DB에 독립적
    -> db 접속시 편리함

6. Multi-Threading

  • 하나의 프로그램 안에서 두개 이상의 기능들이 동시에 실행되는 것

2) 개발환경 - JDK

  • JRE (Java Runtime Environment)
  • JDK (Java Development Toolkit) : 컴파일러를 비롯한 개발에 필요한 여러 도구 + JRE

변수

변수란 하나의 값을 저장하는 공간을 의미한다.

1. 변수 타입 (Data type)

1) 기본형 (Primitive type)

  • 문자형 : char (2byte)
  • 숫자
    - 정수형 : byte, short(2byte), int(4byte), long(8byte) -> 기본 정수형은 int
    - 실수형 : float(4byte), double(8byte) -> 기본 실수형은 double. 오차범위를 줄여 정확성이 높음
  • 논리형 : boolean (1 byte)

2) 참조형 (Reference type)

기본형을 제외한 나머지. 객체의 주소를 저장

2. 변수명 규칙

  • 대소문자 구분, 길이에 제한이 없음 (True와 true는 서로 다른 것으로 간주)
  • 예약어는 사용하면 안됨 (true는 예약어)
  • 숫자로 시작하면 안됨
  • 특수문자는 '_'와 '$'만 허용
  • 클래스 명은 항상 대문자로 시작
    -> 변수와 메서드 이름은 항상 소문자로 시작
  • 여러 단어 이름은 단어의 첫글자를 대문자로 함 (CamelCase)
  • 상수 이름은 대문자로 함. 단어는 '_'로 구분

3. 리터럴과 접미사

public class VariableTest {
	public static void main(String[] args) {
		int age = 30; 	// 변수가 = 의 왼쪽에 올 경우는 변수에 값을 할당하는 것이다.
		System.out.println(age);	// 그 이외는 변수에 저장된 값을 활용하는 것이다.
		age = 40;
		System.out.println(age);
		
		final double PI = 3.14;	// final 변수는 대문자로 선언한다.
		System.out.println(PI);
		// PI = 3.1415; 	// final 변수는 변경 불가하다.
		
		char ch = '홍';	// char 변수는 하나의 글자를 작은 따옴표로 대입한다.
		System.out.println(ch);
		
		String name = "홍길동";	// String(문자열)은 반드시 큰 따옴표로 데이터를 선언하여 대입한다.
		System.out.println(name);
		
		float height = 175.3f;	// 숫자 뒤에 f를 추가하면 float 데이터를 의미한다.
		System.out.println(height);
		
		double weight = 86.4;	// 기본형이 double이라 d를 안적어도 된다.
		System.out.println(weight);
	
		long lv = 100000000000L;
		
		boolean married = true;
		
		int n;
		// System.out.println(n); 	// 지역변수는 초기화하지 않고 사용하면 에러가 난다.
		
		char ch2 = ' ';
		// char ch3 = '';	// char 변수는 따옴표만으로 초기화할 수 없다. (공백은 가능)
		String str = "";	// String 변수는 따옴표만으로 초기화할 수 있다.
		
		String str2 = "abc" + "def"; // 문자열은 어떤 타입이든 + 연산을 하면 문자열로 변환된다.
		System.out.println(str2);
		String str3 = "abc" + 123;
		System.out.println(str3);
		String str4 = "7" + 7 + 7;
		System.out.println(str4);
		String str5 = 7 + 7 + "7";
		System.out.println(str5);	
        
        byte b = 127;
		System.out.println(b);
		b++;
		System.out.println(b);
		
		// 자동 형변환
		byte b2 = 10;
		int n2 = b2;
	}
}

4. 형변환(Casting)

값의 타입을 일시적으로 다른 타입으로 변환하는 것
boolean을 제외한 7개의 기본형은 서로 형변환이 가능하다.

예시

  • int -> char
    (char)65 -> 'A' (아스키코드 값)

  • char -> int
    (int)'A' -> 65

  • float -> int
    (int)1.6f -> 1

  • int -> float
    (float)10 -> 10.0f


profile
프론트엔드 개발자 도전기

0개의 댓글