Languages/Java

[국비지원교육] 03. Java프로그램 실행구조, 변수의 종류, 형변환, Wrapper 클래스 메소드, Scanner 클래스

반응형

*교육내용 중 개인적인 복습을 위해 일부 내용을 정리하였으므로 본 내용은 커리큘럼의 일부임을 알립니다.

 

1. Java 프로그램 실행구조

개발자가 Java 코드 작성

-> 컴파일러인 javac가 java코드를 바이트코드(반기계어)로 변환하여 .class 파일 생성

-> JVM(자바 가상 머신)에서 java가 .class파일을 돌려 프로그램 실행

*OS마다 코드를 별도 구현할 필요가 없음

 

2. 변수의 종류

- 멤버변수(instance 변수): 

--- 클래스변수와 인스턴스변수를 포함하는 개념

--- 클래스 영역에 선언됨

--- 초기화하지 않아도 디폴트값이 들어감

- 클래스변수(static 변수): 

--- 멤버변수 중 static이 붙은 것

--- 클래스 영역에 선언됨

--- 초기화하지 않아도 디폴트값이 들어감

- 지역변수(local 변수): 

--- 메소드나 {} 블럭 안에서 선언됨

--- 지역변수는 반드시 초기화해야 함

--- 초기화하지 않으면 에러발생(stack 영역의 변수는 초기화해야 함)

 

3. 형변환

- 자동 형변환(Implicit)

--- 작은 종류의 데이터를 더 큰 종류의 데이터에 할당하는 경우

--- int보다 작은 데이터의 연산 시 int로 변환하여 연산함(int 연산이 가장 빠름)

--- int보다 큰 데이터의 연산 시 피연산자중 가장 큰 데이터타입으로 변환하여 연산함

--- byte → short int long float double

---            char ↗

- 명시적 형변환(Explicit)

--- 큰 범위의 데이터를 작은 종류의 데이터에 할당하는 경우

--- 개발자가 직접 자료값을 지정함

--- 헷갈리지 않기 위해 자동변환 되는 경우에도 명시해주기도 함

--- Cast 연산자 ()를 사용

float f = 3.14f;
int i = (int)f;

 

4. Wrapper Class 메소드

- 기본형 변수들을 객체로 다루어야 하는 경우 사용한다.

//최대값과 최소값

int i_min = Integer.MIN_VALUE;
int i_max = Integer.MAX_VALUE;

char ch_min = Character.MIN_VALUE;
char ch_max = Character.MAX_VALUE;

- Parse 메소드, toString메소드의 예시(byte, short, int, long, float, double, char 클래스에 각자 메소드가 있음)

//문자열 -> 숫자 예시

String str = "1234";
int i = Integer.parseInt(str);

//숫자 -> 문자열 예시

int i = 1234;
String str = Integer.toString(i);

*잘 모르겠는 점: Java Platform Standard에 Wrapper라는 클래스는 따로 찾을 수 없다. java.lang 하위에 Integer, Character 등 변수타입 클래스가 각각 있고 거기서 설명과 사용예시를 볼 수 있다.

 

5. Scanner Class 사용

import java.util.*; //또는 java.util.Scanner;

System.out.println("Input data:");
Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
System.out.println("data: "+str);

public int nextInt()

public double nextDouble()

public String nextLine()

public boolean nextBoolean()

728x90
반응형