객체지향언어
초기엔 작은 생활가전을 제어하기 위해 만들어짐
플랫폼에 독립적인 언어 (모든 기계가 동작)
기존 언어는 기계마다 각각 프로그램을 짰음
실행파일(class)만 있으면 플랫폼에 관련없이 다양한 환경에서 모두 동작
C + 객체지향 프로그래밍 언어 → java
💊 C vs 자바
* C
기계1 : C 코딩 → 컴파일(번역) → 기계 동작
기계2 : C 코딩 → 컴파일(번역) → 기계 동작
기계3 : C 코딩 → 컴파일(번역) → 기계 동작
* 자바
Java → 컴파일(번역) → 실행파일 → 모든기계 동작
* C(윈도우용 소스) → 윈도우 번역 → 윈도우 실행파일
C(리눅스용 소스) → 리눅스 번역 → 리눅스 실행파일
* 자바소스 → 자바 번역 → 바이트 코드(실행파일) → 윈도우/리눅스 자바가상머신 실행 → 실행
웹 서버 개발, 안드로이드 앱 개발, 게임 개발에 사용
자바프로그램이 어느 기기, 어느 운영체제 상에서도 실행될 수 있게 함.
- JDK 자바개발도구 (JVM 포함)
기계마다 번역을 시키게끔 프로그램이 따로따로 있음
java.sun.com
https://www.oracle.com/java/technologies/downloads/#java11-windows
- Open Java Development Kit 11
https://github.com/ojdkbuild/ojdkbuild
운영체제에 맞게 설치하기
java는 대규모 프로젝트에 많이 사용. 기존의 시스템과 합쳐서 운영하는 게 가능
java → 실행
javac → 자바라는 언어로 번역
javac → 번역, 실행파일 → java로 실행
* bin 폴더안에 명령어들이 들어있음
* path : 컴퓨터에게 길을 알려주는 것.
- 프로그래밍 : 컴퓨터 프로그램을 만드는 일
컴퓨터가 일을 하도록 컴퓨터 언어로 명령을 만들고
명령을 실행하게 하는 것
- 프로그래머 : 프로그램을 만드는 사람
- 프로그램 : 컴퓨터에게 일을 시키는 명령의 집합
자바언어(소스코드, 명령) → 번역 (컴파일, 실행파일생성) → 컴퓨터에서 실행
public(공공의) class(프로그램 묶음 단위) Main(묶음의 이름)
public static(즉시) void [동작묶음의 단위] main(묶음의이름)
System.out.println(); 출력하라는 명령
저장
파일형식 : 모든 파일
파일이름 : Main.java
번역작업하기
실행 - cmd
번역 : javac Main.java (실행파일 Main.class 생성)
실행 : Java Main
압축풀어 설치하기
작업공간 : d:\workspace_java1
작업공간 한글 처리 - UTF-8
windows - preferences General - appearance - workspace - Text file encoding - Other - UTF-8
테마 및 글꼴 변경
General - appearance - Theme
General - appearance - Color and Font - basic - Text Font - Edit
java 환경으로 변경
오른쪽 상단 아이콘 - java 선택
File - New - java Project
project name : Test221021
JRE 환경파일 (java runtime environment)
ㄴ JavaSE-11 로 변경
Next - Finish
src 오른쪽 버튼 - new - Class[프로그램 큰단위]
name : Main
public static void main(String[] srgs) 체크!
package test;
public class Main {
public static void main(String[] args) {
System.out.println("Hello world");
}
}
Main.java 오른쪽 버튼 - run as - java application
또는 ctrl F11
~~~
workspace - Test221021 - src - test - java 파일
workspace - Test221021 - bin - test - class 파일