본문 바로가기

Study/Android

JAVA에 대하여..

JAVA는 C나 C++과 표기방법이 비슷하지만,
포인터, 구조체, 전역변수, Goto문, Garbage Collector와 같은 개념이 없는 등
세세한 부분까지 신경 쓰지 않아도 되는 경우가 많은 언어사양을 가지고 있다.

* 특징
객체지향 - 기능을 그룹별로 나눔
JAVA VM 실행환경에서 호환
분산처리의 용이성, 개발환경 실행환경분리, 높은 이식성 등등등


* 자바로 할 수 있는 것
CUI 어플리케이션 - Character User Interface 환경에서 동작하는 프로그램
GUI 어플리케이션 - Graphic User Interface 환경에서 작동하는 프로그램
Java Applet - Web 브라우저상에서 동작하는 프로그램
                  - HTML 안에서 애플릿을 지정
Java Servlet - Web 서버상에서 동작하는 프로그램
                  - 서버에서 실행되고, 실행결과를 클라이언트의 Web 페이지로 보내준다.
JSP (Java Server Page) - HTML 문서와 JAVA 프로그램을 조합
                                   - 서버에서 실행되고, 그 결과를 클라이언트에게 보내준다.
                                   - HTML 문서 속에 JAVA 코드를 삽입하는 형태로 작성
Java Beans - 자바로 작성한 프로그램을 (컴포넌트) 부품으로써 다루는 것
                  - 이 부품들을 조합하여 어플리케이션을 만들 수 있다.


* Java VM
자바 가상머신은 Java로 작성된 프로그램을 실행하기 위한 환경이다.
  - 자바 프로그램의 실행파일은 플랫폼에 의존하지 않는 바이트 코드로 만들어짐
     Java VM은 이 바이트코드를 기종의 고유코드로 변환하여 실행
  - Java VM이 있으면 OS와 관계없이 Java를 실행할 수 있다.
     PC뿐아니라 Java VM이 탑재된 가전제품 등에서도 실행이 가능
  - 멀티스레드 (동시수행 작업 기술 기능)
  - 인터프리터가 설치된 기계
  - JDK 설치가 필요


* Java 2의 에디션
SE (Standard Edition) - 클라이언트 지향의 기본적 환경
EE (Enterprise Edition) - 서버 소프트웨어 개발을 위한 환경
ME (Micro Edition) - PDA나 휴대 전화 등 소형기기를 위한 소프트웨어 개발 환경

Java 2는 1988년에 발표
Java 2 SE 에는 개발도구 SDK와 JDK가 있다.
SDK에는 javac 컴파일러와 JRE가 포함되어 있다.
자바 프로그램 실행에는 JRE (Java Runtime Environment) 라는 실행환경 프로그램이 필요


* 프로그래밍의 기본적인 흐름
1. Text Editor - .java 라는 확장자의 text로 프로그램 기술 (소스 파일)
                       ex)  Hello.java
2. 컴파일러 - Javac 라는 이름으로 SDK에 포함
                 - javac 명령어 사용
                    ex)  javac Hello.java
                 - 대,소문자를 정확하게 입력해야 함
                 - 컴파일하여 생성된 파일을 클래스 파일이라고 한다.
3. 프로그램 실행 - java 명령어 사용
                          ex)  java Hello  (확장자 입력 불필요)
                             - Java VM이 클래스 파일을 읽어 프로그램 실행
                             - ex)  java Main orange apple grape
                                    파일뒤에쓰는 것은 전달할 인자 (orange apple grape 전달)

* 프로그램의 기술 시 주의사항
소문자와 대문자를 구분 - IF 와 if 는 다르다.
전각 스페이스는 화이트 스페이스로 인식하지 않는다.
주석은 /* */ 또는 // 를 사용
예약어에 주의 - 예약어는 컴파일러가 사용하는 키워드이다.