식별자와 키워드, 변수와 상수, 자바의 자료형등과 같은 형변환을 위해 필요한 지식을 알아보자

 




학습목표

*식별자와 키워드의 개념과 형식을 알고 식별자를 만드는 방법 공부

*변수와 상수의 개념을 파악하고 변수를 선언하는 방법 알아보기

*자바의 자료형 타입과 형식을 알고 선언하는 방법

*demotionpromotion을 사용하는 방법을 설명할 수 있다.

*자바의 데이터형을 형 변환 하여 데이터 변수에 적용하는 방법을 설명할 수 있다.

 

공부내용

식별자와 키워드

변수와 상수

자바의 자료형

demotionpromotion

자바의 형 변환

 




체크해보기

1.식별자란 프로그래밍 언어에서 변수, 상수, 배열, 클래스, 메서드, 레이블 등을 식별하기 위하여 붙이는 이름을 말한다.

2.키워드란 주요단어란 뜻으로 자바에서 미리 사용하기 위해 예약해둔 단어들이란 뜻을 가졌다.

3.자바의 자료형의 종류에는 기본형과 참조형이 있다.

4.식별자가 필요한 이유는?

-자바프로그램에서 이름이 필요한 것에 사용됨, 그 정보를 처리하기 위해서 정보를 가리키는 방법

 


식별자의 규칙

*첫글자는 반드시 문자

*특수문자 사용불가

*공백문자 사용불가

*대소문자 정확하게 구별된다

*길이의 제한은 없다

*자바 키워드를 식별자로 사용할 수 없다.

 

키워드란?

*예약어로 주요단어란 의미

*자바에서 미리 프로그래밍에 사용하기 위해 예약해둔 단어

*키워드로 지정한 예약어는 식별자 또는 명칭으로 사용될 수 없다

 

변수와 상수

변수는 변하는 수라는 뜻

값을 저장할 수 있는 메모리상의 공간

숫자값 문자열 값 또는 클래스의 객체를 나타낸다

(객체는 간단하게 저장공간에서 할당된 공간을 의미)

변수에 저장된 값은 변경할 수 있지만 변수 이름은 그대로 유지됨

자바의 데이터형식중 어떤 것인지 지정해야함

응용프로그램이 실행될 때 값을 저장하기 위해 할당해야 하는 정확한 메모리 양을 지정한다

 

변수의 정의규칙

_, $로 시작 할 수 없으며 공백을 포함할 수 없다

숫자나 특수문자로 시작할 수 없고 대소문자를 구분한다

길이에 제한이 없다

자바의 키워드는 변수명으로 사용할 수 없음

변수는 선언과 동시에 초기화 할 수 있음

 

상수란?

- 변하지 않는 수

- 자신의 표기법이 곧 자신의 값이 된다

 

상수의 특징

-변수 선언과 동시에 상수로 반드시 초기값을 할당함

-공용상수는 클래스 내부에서 static final 키워드를 사용하여 선언됨

-상수에 저장되는 값은 프로그램이 컴파일 될 때 대입되며 변경되지 않음

 


자바의 자료형


 


 



문자형

자바에서 문자를 처리하기 위한 코드로 16bit 유니코드 사용

작은 따옴표로 묶인 한 문자를 상수로 가짐

2byte의 크기를 가짐

작은 따옴표로 묶인 특수문자를 표시

작은 따옴표로 묶인 16진수 네 자리로 문자로 표시 가능




 


 

 

참조형

 

 

 

 

 

 

'매일코딩 > 자바' 카테고리의 다른 글

[자바기초] 2.식별자와 상수  (0) 2017.01.03
[자바기초] 1.java언어의 탄생 배경과 특징  (0) 2017.01.02

자바는 누가 만들었나?

자바는 월드 와이드 웹이 개발되기 시작하였던 1991년 썬 마이크로시스템즈에서 제임스 고슬링에 의해 탄생되었다.

 

자바의 특징

- 자바 애플릿은 HTML에서 사용자와 서버 사이의 다이나믹 환경을 제공하는 작은 프로그램으로 애니메이션이나, 간단한 게임 그리고 사용자가 서버에 별도의 요청을 하지 않고서도 수행할 수 있는 단순한 작업들을 수행할 수 있어 빠르게 확산, 대중화를 이루게 된다.

- 자바 컴파일러는 바이트 코드라는 중립적인 구조의 실행코드를 만들어 낸다.

- 바이트 코드는 각 플랫폼에 있는 인터프리터를 통해 실제로 실행된다.

 

 

시대별 특징


1991

자바는 월드 와이드 웹이 개발되기 시작하였던 1991년 썬 마이크로시스템즈에서 제임스 고슬링에 의해 탄생되었다

(단순하고 버그가 없는 가전 전자 제품을 만드는 것을 목표로 함)

 

1993

고슬링은 자바애플릿을 구현한 최초의 웹브라우저인 핫 자바를 개발함.

자바애플릿은 HTML에서 사용자와 서버 사이의 다이나믹 환경을 제공하는 작은 프로그램

사용자가 서버에 별도의 요청을 하지 않고도 단순 작업 수행가능

빠르게 확산, 대중화를 이룬다.

 

1997

JDK 1.1발표

 

2013

JDK 버전 까지 발표

 

자바의 플랫폼은 소프트웨어로 구성

 

자바의 영역

JAVA EE

자바의 서버측 기술

비즈니스 로직을 수행하는 컴포넌트 개발

 

JAVA ME

PDA, 핸드폰, 스마트폰등 모바일 환경 구축

 

JAVA SE

자바의 개발의 기본적인 에디션

채팅, 메신저, 게임, 메모장 등 데스크톱 애플리케이션을 개발 할 때 사용

 


자바와 다른 언어의 차이점?

 

코드의 단순성( C++에서 잘사용 되지않거나 모호하고 좋지 않은 기능을 제외하고 단순화 )

 

C/C++ 과 다른점은

구조체와 공용체 포인터를 지원하지 않음

typedef#define을 지원하지 않음

연산자 다중 정의를 지원하지 않음

클래스 다중 상속을 지원하지 않음

문자 배열로서 String 이라는 클래스 지원함

쓰레기 수집 기능을 제공함으로써 메모리 할당과 해제가 되어 함수를 사용할 필요가 없음

 

객체 지향언어

C++에서와 같은 전역 변수와 독립 함수가 존재하지 않음

자바에서는 오직 객체만이 존재함

 

객체 = 속성 + 행위

= 변수 + 메소드

 

플랫폼 독립

 

네트워크 환경과 다양한 하드웨어에서 작동할 수 있음

자바 가상 머신이 있으면 자바 코드의 변경 없이 실행할 수 있음

자바 컴파일러는 바이트 코드라는 중립적인 구조의 실행 코드를 만들어 냄

바이트 코드는 각 플랫폼에 있는 인터프리터를 통해 실제로 실행됨

 

) JAVA CODE(.java) => JAVA 컴파일러가 => Byte Code(.class)로 변경 ,

JVM이 설치된 윈도우, 리눅스, 맥에서 .class를 읽을 수 있다.

 

신뢰와 안정성

컴파일시 엄격한 데이터형 검사를 진행하므로 비정상적인 상황을 예방한다.

힙이나 스택등의 메모리에 접근할 수 없어서 바이러스로부터 안전하다.

공용키 암호화 방법으로 사용자를 식별해서 해커로부터 정보를 보호한다.

 

높은 성능

 

쓰레기 수집기능으로 사용하지 않거나 메모리가 해제되면 자동적으로 메모리를 수거 한다.

(메모리가 할당된 객체의 상태를 끝까지 추적)

 

6. 멀티쓰레드 기능

하나의 프로그램 안에서 여러작업을 동시에 처리 할 수 있다.

 

 

 

2. 자바의 환경 설정과 실행

 

-jdk 설치 (자바 개발을 위한 환경)

www.oracle.com 에서 다운 가능

java sejdk를 선택하면 jre도 함께 설치 가능하다.

jre에는 자바 실행환경인 jvm과 클래스 라이브러리들이 포함되어 있다.

jdk는 자바 개발도구인 jre와 개발이 필요한 실행 파일을 포함한다.


설치과정은 이 곳을 참고. 

http://nukestorm.tistory.com/18 

 



 

jdk의 특징

GUI 형태의 개발환경을 제공하고 있지 않음

메모장 같은 에디터에서 자바프로그램 소스 작성

 

이클립스를 많이 사용함

http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/mars/2/eclipse-jee-mars-2-win32.zip 다운로드 가능

 

 

#순서 중요

JDK 프로그램을 설치하고 나면 bin 디렉터리에는 실행파일과 DLL 파일이 들어 있다.

javac 자바 컴파일러 , 자바코드를 바이트 코드로 컴파일 해줌

java 자바 인터프리터, javac로 컴파일 된 바이트 코드를 실행

jdb 자바 프로그램을 디버깅할 수 있는 command 라인 디버거

javah 자바 클래스로부터 c 헤더 파일과 c stub 파일을 만들어 주는 도구

이를 통해 자바 코드와 c코드를 연결할 수 있음

javap 컴파일된 자바 파일을 dissasemble 해주는 도구 , 바이트 코드를 프린트 해줌

javadoc 자바 소스 코드로부터 html 형태의 api 문서 만듦

 


 자바의 생긴 모습


* 설명

void 아무것도 출력하지 않음

public 키워드 누구든 이 메소드를 호출할 수 있도록 공개

static 키워드 이 클래스에는 오직 하나의 main 메소드 공유

class 는 맴버변수와 메소드의 결합이다.

하나의 소스파일에 클래스를 여러개 선언한 경우

public 이 붙은 클래스를 하나만 선언 할 수 있음

이 클래스의 이름은 소스파일명과 동일해야 함

 

 

 

코드의 실행 단계

 

1.자바 코드를 text 문서 편집기를 이용해서 코드 작성


2. 파일 이름을 클래스명.java”로 저장함

(만일 클래스 이름이 classAA{} 라면 AA.java로 저장)

저장시 대소문자는 반드시 구별해서 저장

확장자는 반드시 “.java”

 

3.컴파일 과정을 거친다

 

컴파일 작업: javac 파일명 .javajavac AA로 컴파일함

컴파일 작업 후 : 파일명.class 라는 파일 생성되며 AA.java를 컴파일 하면 AA.class 가 생성됨

 

4. 실행

java 파일 명으로 함

java AA로 실행하면 됨

 

 

 

jvm은 실제로 존재하는 것이 아닌 개념적인 컴퓨터이다.

소프트웨어로 하드웨어를 에뮬레이션 하는 가상컴퓨터이다.

 

jvm 메모리


메소드 영역

클래스의 메소드에 대한 바이트 코드

전역변수(클래스 변수)

 

힙영역

객체를 저장할 때 사용하는 메모리

new 연산자를 이용하여 동적 할당해서 생성하는 영역

 

스택영역

지역변수, 메소드의 인자, 메소드의 리턴값, 리턴번지 등을 사용

 

레지스터 영역

가상 머신의 현재 상태를 보여주며 현재 실행되고 있는 메소드의 실행 포인터 저장

 

실행풀

숫자 리터럴과 상수 필드 포함

메소드 영역으로부터 할당 받음

'매일코딩 > 자바' 카테고리의 다른 글

[자바기초] 2.식별자와 상수  (0) 2017.01.03
[자바기초] 1.java언어의 탄생 배경과 특징  (0) 2017.01.02

+ Recent posts

티스토리 툴바