자바공부하기 41.

 

클래스와 인스턴스

 

변수의 한계

- 데이터를 지속적으로 유지할 수 없음

- 한번에 하나의 데이터만 가질 수 있음

(여러 개의 데이터를 한번에 처리할 필요가 있음)

- 이런 한계를 극복하기 위해 C에서는 구조체를 사용

 

구조체

- C에서 사용하던 데이터 타입 생성기

- 기본 데이터 타입의 한계를 극복하기 위해 등장

- 하나의 변수에 2개 이상의 수를 담기 위해 사용

- 사용자 정의 데이터 타입

- 자바에서는 사용하지 않음(데이터만 담음, 메모리에 바로 적재됨)

 

 

 

 

 

자바공부하기 40.

 

형 변환(casting)_ 예제

 

1번째예제

 

2번째예제 

 

 

3번째예제

 

 

 

자바공부하기 39

 

형 변환 (casting)

 

때로 숫자 타입을 다른 타입의 숫자로 바꾸어야 할 때가 있다.

기본데이터 타입의 형 변환

- 작은 수가 큰 수로 형 변환되는 것이 자동이다.(묵시적)

* 반대의 경우는 강제 형 변환이 필요(명시적) - 오버플로우 발생

- 덜 정밀한 수가 정밀한 수로 형 변환되는 것은 자동이다.(묵시적)

* 반대의 경우는 강제 형 변환이 필요(명시적) - 오버플로우 발생

 

데이터 타입의 연산에 의한 형 변환

- 큰 수와 작은 수를 연산했을 때

* 큰 수로 형 변환된다.

- 덜 정밀한 수와 정밀한 수를 연산했을 때

* 정밀한 수로 형 변환된다.

- 정수와 실수를 연산했을 때

* 실수형으로 형 변환된다.

- 자동형 변환의 예 double d= 3*4.5F;

* 3*4.5F의 결과는 float형이 된다.(정수와 실수의 연산)

* float형의 결과가 double d에 할당되면서 float형이 double형으로 자동 형 변환된다.

 

 

JAVA공부하기 38

 

할당

 

변수에 데이터를 넣는 것

- 기본타입에서 할당은 "Copy of value"

 

기본 법칙

- 오른쪽에서 왼쪽으로만 할당

- 변수끼리 할당 가능

- 변수에 상수가 존재하더라도 다른 것을 할당하면 마지막 할당한 것이 할당 " = " 연산자 사용

 

할당의 예

- 선언과 할당을 동시에 : int a=100;

- 선언과 할당을 분리 : inta;a=100;

- 여러 개를 동시에 선언과 할당 : int a =100, b=200;

- 분리하여 여러 개를 동시에 선언과 할당 : inta, b; a=100, b=200;

- 변수끼리의 할당 : int a=100,b; b=a;

 

 

 

JAVA공부하기 37

 

상수 예제 1번

 

 

 

 

상수 예제 2번

 

java공부하기36.

 

상수

- 미리 정해진 실제의 값

- 상수 자체가 수이며 이미 만들어져 있는 것

- literal이라 부르기도 함

- 상수는 그 자체가 값이기 때문에 변경할 수 없음.

(5=100 -> 오류)

- 변수에 저장되지 않으면 쓸모가 없다.

- 변수를 상수로 만들 수도 있다.(public final int a=100;)

 

상수의 종류

- 정수형 상수의 구분

: 100; 명시하지 않으면 int형 상수- default

: 100L, 100l : long형 상수

 

- 실수형 상수의 구분

: 5.34 : 명시하지 않으면 double형 상수 - default

: 5.34F, 5.34f : float형 상수

: 5.34D, 5.34d : double형 상수

 

 - 문자 상수의 예

: 'A','B'

 

- 문자열 상수의 예

: "abcd","안녕하세요"

 

 

 

자바공부하기 35

변수

 

변수란?

- 데이터 타입에 명시된 형태의 데이터를 담을 수 있는 메모리이다.(그릇)

- 변수는 데이터 타입을 통해 존재할 수 있다.

- 변수는 데이터를 보관하기 위해서이다. ( <- 변수의 목적 )

- int a=5;

: 4바이트 메모리 확보(정수형)

: 메모리의 주소에 a라는 이름을 메핑시킴

: a라는 변수를 통해서 해당 메모리에 5라는 값 할당

: 32비트 정수형 데이터가 스택 메모리에 저장

 

 

 

자바공부하기 34

데이터타입의 두번째 목적

 

- 메모리의 형태를 지정하는 것이다.

: 메모리의 형태란 비트의 조합을 말한다.

: int 정수 형이다.

 

- 다시 마라해 데이터 타입이란 메모리의 크기(size)와 메모리의 형태(type)를 지정하는 것이라 정의할 수 있다.

: int a; //4 바이트 메모리 생성, 정수 형태의 메모리

: char c; //2 바이트 메모리 생성, 정수 형태의 메모리

: float f; //4 바이트 메모리 생성, 실수 형태의 메모리

 

심볼 테이블

- 컴파일러가 프로그램 내에 필요한 변수들을 주소로 매핑하기 위해 만드는 심볼들의 테이블

 

 

 

 

 

+ Recent posts