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 바이트 메모리 생성, 실수 형태의 메모리

 

심볼 테이블

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

 

 

 

 

 

자바공부하기 33

데이터타입

 

메모리를 얻는 방법

- int a;

: 4바이트 메모리를 얻는다

: 얻은 메모리의 주소(위치)를 받아낸다

: 메모리 위치를 a라는 이름과 연결시켜 준다

 

데이터 타입은 메모리를 얻기 위한 하나의 수단으로 활용

 

데이터 타입은 (메모리의)크기(size)이다. (VM이 미리 정해놓은)

 

자바의 기본 데이터 타입

- 컴파일러 차원에서 미리 제공되는 데이터 타입을 기본 데이터 타입이라 한다.

 

- byte(1),char(2),short(2),int(4),long(8),float(4),double(8)

: byte: 8비트, 2의 보수(-128~127)

: short: 16비트 (-32768~32767)

: char: 16비트, 유니코드(0~65535)

: int: 32비트(-2147483648 ~ 2147483647)

: long: 64비트 (-9223372036854775808~9223372036854775807)

: float: 32비트

: double: 64비트

: boolean: true, false

 

 

JAVA공부하기 32

데이터타입

 

데이터 타입이란?

: 프로그래머가 메모리를 얻어올 때 그 크기를 지정한다는 의미

 

메모리를 얻고 사용하는 절차

: 필요한 메모리의 크기를 정한다.

: 크기에 해당하는 만큼의 메모리를 얻는다

: 메모리에 데이터를 집어 넣는다.

 

만약 4바이트의 메모리를 프로그래머가 얻어낸다는 것은 어렵기 때문에 메모리의 크기를 미리 지정하는것이 데이터 타입니다.

 

데이터 타입을 이용하면 효과적인 메모리 활용이 가능하다.

 

 

 

 

 

객체지향의 핵심 키워드

 

클래스(Class) : 데이터+메서드

객체(Object), 인스턴스(instanse)

메시지(Message)

캡슐화(Encapsulation)

상속(inheritance)

다형성(polymorphism)

 

클래스 : 메타 데이터 => 데이터의 데이타

다형성 : 서로 다른 객체가 동일한 메세지에 대하여 서로 다른 방법으로 응답할 수 있는 기능

 

 

 

객체지향 (3)_ 자바공부하기

 

객체지향개념의 등장 배경

 

프로그래밍 언어의 발전

- 기계어 -> 어셈블리어 -> 고급언어

 

함수 기반 프로그래밍

- 1970년대 - 1980년대

 

소프트웨어의 위기

- 생산성 향상의 한계

 

객체지향 개념의 등장

- 1980년대

 

객체지향?

 

 

 

+ Recent posts