- 프로그래밍 언어란 주어진 어떤 문제를 해결하기 위해
인간과 컴퓨터 사이에서 의사소통을 가능케 하는
인공적인 언어이다.- 이 언어를 통하여 사용자는 컴퓨터에게 일련의 일을
시키는 명령어들의 집합체인 프로그램을 작성할 수 있다.
1-1 프로그래밍 언어의 종류
- 기계어 : 컴퓨터가 이해하는 언어로서 2진수 집합으로 구성
- 고급언어 : 사람이 이해할 수 있는 수준의 언어.
기계어로 변환이 되어야만 프로그램 형태로 실 행하는 것이 가능하다.
- 운영체제에 독립적
-> JVM이 설치된 환경이라면 어디서든 실행가능- 객체지향 언어
-> 상송, 캡슐화,다형성
->코드의 재사용 및 유지보수에 용이함- 자동 메모리 관리
-> Garbage collector이 자동으로 메모리를 관리
Java는 JVM에 탑재되어 있는 가비지컬렉터가
메모리 관리를 대행해주기 때문에 개발자 입장에서
메모리 관리,메모리 누수(Memory Leak) 문제에서 대해 완벽하게 관리하지 않아도 되어 오롯이 개발에만 집중할 수 있다는 장점이 있습니다.
가비지 컬렉션의 단점
소스코드 -> (컴파일) -> 바이트 코드
(Source Code) (Byte Code)
*.java .class
소스코드 : 소스 코드(영어: source code) 또는 원시 코드란 컴퓨터 프로그램을 사람이 읽을 수 있는 프로그래밍 언어로 기술한 텍스트 파일
바이트코드 : 바이트코드(Bytecode)는 고급 언어로 작성된 소스 코드를 가상머신이 이해할 수 있는 중간 코드로 컴파일한 것을 말한다.
컴파일(Complie) : 컴파일은 인간이 이해할 수 있는 언어로 작성된 소스 코드(고수준 언어 : C, C++, Java 등)를 CPU가 이해할 수 있는 언어(저수준 언어 : 기계어)로 번역(변환)하는 작업을 말한다.
컴파일러(Complier) : 특정 프로그래밍 언어로 쓰여 있는 문서를 다른 프로그래밍 언어 혹은 컴퓨터 언어로 옮기는, 일종의 번역 프로그램
컴파일, 컴파일러 차이 - 코딩을 마친 후 코드로 짜여진 소스들을 소프트웨어로 실행시키기 전 한방에 미리 번역하는 과정이 '컴파일'이고, 번역역할을 해주는 놈이 컴파일러 이다.
- 컴파일된 자바 바이트 코드를 실행시켜 주는 소프트웨어
- 자바 프로그램은 JVM이 설치된 환경이라면 운영체제나 하드웨어에 종소되지 않고 실행가능
- 운영체제로부터 독립적
직역하면 '자바를 실행하기 위한 가상 기계(컴퓨터)'라고 할수 있다.
Java는 OS에 종속적이지 않다는 특징을 가지고 있다.
OS에 종속받지 않고 실행되기 위해선 OS위에서 Java를 실행시킬 무언가가 필요하다. 그게 바로 JVM이다.
즉, Os에 종속 받지 않고 CPU가 Java를 인식, 실행할 수 있게하는 가상 컴퓨터이다.)
자바 설치여부확인
winkey+r : 실행 -> cmd 실행-> java -version (버전확인)
자바 설치
https://www.oracle.com/java/technologies/downloads/#java11
- 11 ver
- 환경세팅
신규생성 : Java_HOME
path : %JAVA_HOME%|bin 추가
https://www.eclipse.org/downloads/
Download Packages ->
Eclipse IDE for Enterprise Java and Web Developers에서
운영체제 선택
eclipse ----- ---- ---- ctrl- + shift + 확대 ctrl + shift - 축소 ctrl + M 전체화면 ctrl + d 한줄 삭제 ctrl + z 복원 ctrl + y 복원 ctrl + F11 실행
windows ----- ---- ---- winkey- + r 실행 notepad 메모장 calc 계산기 cmd 명령 프롬프트