본문 바로가기

카테고리 없음

[Day1][Java] 프로그래밍 언어의 특징 / JDK와 Eclipse 설치 / Eclipse UTF-8 인코딩 설정 / 클래스 구조 / Escape 문자(제어 문자)

Ⅰ. 자바 프로그래밍 언어의 특징

1. 운영체제(Operating System)에 독립적이다.

-- 자바 언어가 나오기 전까지 기존 언어는 운영체제(Windows, Linux, Macintosh)에 종속적이다.

-- 왜냐하면 기존 언어는 운영체제와 하드웨어 등이 이해 할 수 있도록 각의 운영체제에 맞는 변환과정을 거쳐야 하기 때문이다.

-- 하지만 자바 언어를 사용하여 만들어진 응용 프로그램는 운영체제와 하드웨어가 아닌 JVM 하고만 통신을 하고,

응용 프로그램으로부터 전달받은 내용을 JVM이 해당 운영체제가 이해할 수 있도록 변환해서 전달해주기 때문에 운영체제에 독립적이다.

▷ 자바 <==> 운영체제 (독립적 관계)

▷ 자바가상머신(Java Virtual Machine) <==> 운영체제 (종속적 관계)

▷ [기존 언어] <==> [운영체제, 하드웨어]

▷ [자바 언어] <==> [JVM] <==> [운영체제, 하드웨어]

-- 즉, 자바는 운영체제를 고려하지 않고 코드를 작성하며, JVM이 이를 각 운영체제에 맞게 변환시켜 준다.

→ Windows 기반에서 작성한 자바소스(.java)를 다른 운영체제 Linux 등에서도 그대로 사용 가능

-- .java파일 ==> 사람이 읽을 수 있는 text로 이루어져 있다.

-- .class파일 ==> .java 파일을 컴파일 한 후 생성되는 파일로서 이것은 bytecode로 이루어져 있으며,

JVM이 이 .class파일을 각 운영체제(Window, Linux, Macintosh)에 맞는 기계어로 변환해 주고 운영체제에 전달하여 실행시켜 준다.

▷ .java 파일 (사람이 읽을 수 있는 text언어) ==> (컴파일 javac.exe) ==> Hello.class생성 (bytecode로 이루어짐) ==> (실행 java.exe(JVM)) ==> "Hello World" 출력

2. 자동으로 메모리 관리를 한다.

-- C++은 메모리 관리를 위해 개발자가 직접 코드를 작성해야 해야 하지만,

자바는 개발자가 메모리에 직접 접근할 수 없으며 자바가 직접 메모리를 관리하도록 되어있다.

-- 객체를 생성할 때 자동적으로 메모리 영역을 찾아서 할당해 주고, 객체 사용이 완료되면 Garbage Collector를 실행시켜 자동적으로 사용하지 않는 객체를 제거해 준다.

-- 따라서 개발자는 메모리 관리에 신경쓰지 않고, 코딩에만 집중하면 된다.

3. 네트워크와 분산환경을 지원한다.

-- 자바는 인터넷과 대규모 분산환경을 염두에 두고 만들어진 언어이므로 풍부하고 다양한 네트워크 프로그래밍 라이브러리(Java API)를 사용하여 비교적 짧은 시간에 네트워크 관련 프로그램을 쉽게 개발할 수 있도록 지원해 준다.

4. 멀티쓰레드를 지원한다.

-- 자바는 쓰레드 생성 및 제어와 관련된 라이브러리 API를 제공하고 있기 때문에 실행되는 운영체제에 상관없이 멀티쓰레드를 쉽게 구현할 수 있게 해 준다.

5. 이식성이 높다.

-- 이식성이란?

: 서로 다른 실행 환경을 가진 시스템 간에 프로그램을 옮겨 실행할 수 있는 것

-- 자바 언어로 개발된 프로그램은 소스 파일을 수정하지 않아도, 자바 실행 환경(JRE)이 설치되어 있는 모든 운영 체제에서 실행 가능하다.

6. 사용하기 쉬운 언어이다.

 


Ⅱ. Java 환경 구축하기

 

1. JDK 설치

1) ORACLE 계정 로그인

-- ORACLE 홈페이지에 접속하여 계정 로그인을 한다. 만약에 없다면 계정 만들기를 선택하여 만든다.

www.oracle.com

 

Oracle | Integrated Cloud Applications and Platform Services

Cetera cites reduced integration points, improved efficiency with Oracle Cloud applications in heavily regulated financial industry. “What helped us to get comfortable early on was the fact that Oracle offered a cloud-based service specifically for financi

www.oracle.com

2) JDK 설치

-- 로그인이 되었다면 Menu-Developer-Java에 들어가면 Java Standard Edition(Java SE) Download을 들어가면 여러 버전의 Java SE가 있다.

-- Java SE는 12.02(현재 기준 19.09.01)까지 많은 버전이 나왔으나 8 버전이 더 안정적이라는 말이 있어서 8을 설치하였다. ​자신의 취향껏 설치하도록 하자.

-- 자신이 선택한 버전의 JDK를 설치한다. 

-- 바로가기 : https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

 

Java SE Development Kit 8 - Downloads

Java SE Development Kit 8 Downloads Thank you for downloading this release of the Java™ Platform, Standard Edition Development Kit (JDK™). The JDK is a development environment for building applications, applets, and components using the Java programming la

www.oracle.com

-- Accept License Agreement를 선택하고, 자신의 OS에 맞는 exe 파일을 선택하여 설치한다.

 

-- exe 파일을 실행하여 다음(next)를 3번 누르면 설치가 완료된다.

 

3) 환경변수

-- 제어판-시스템 및 보안-시스템-고급 시스템 설정

-- 본인 컴퓨터의 OS가 32bit인지 64bit인지 모르겠다면 여기서 확인할 수 있다.

-- 환경변수

-- 시스템 변수-새로 만들기

-- 변수 이름: CLASSPATH / 변수 값 : . 

-- 확인

-- 시스템 변수-새로 만들기

-- 변수 이름 : JAVA_HOME / 변수 값 : C:\Program Files\Java\jdk1.8.0_221

-- 변수 값에는 Java JDK가 설치되어있는 파일 경로를 입력한다. 만약 설치할 때 다른 경로로 저장하지 않고 Next만 눌렀다면 아래 변수 값과 같은 폴더에 있을 것이다.

-- 확인

-- 시스템 변수-Path-편집

-- 새로 만들기-%JAVA_HOME%\bin

-- 환경변수가 잘 잡혔는지 cmd 창을 켜서 확인해 본다.

-- 실행(또는 윈도우 키 + R)-cmd-확인

-- java -version와 javac를 입력하여 아래와 같이 나온다면 잘 잡힌 것이다.

2. Ecilpse 설치

-- 바로가기 : https://www.eclipse.org/downloads/

 

Eclipse Downloads | The Eclipse Foundation

The Eclipse Foundation - home to a global community, the Eclipse IDE, Jakarta EE and over 350 open source projects, including runtimes, tools and frameworks.

www.eclipse.org

-- 64bit Download하여 exe 파일 실행

-- 나중에 JSP도 사용하여야 하기 때문에 Eclipse IDE for Java EE Developers 설치하였다.

-- 저장할 폴더를 지정한 후 Accept, Launch를 해 주면 설치가 완료된다.

 

3. Eclipse UTF-8 인코딩 설정

-- Window-Preferences

-- General-Content Types-Java Class File

-- Default encoding: UTF-8 입력-Update

-- 나머지 HTML Files, JSP Files, XML Files에도 Encoding : ISO 10646/Unicode(UTF-8)로 바꾸어준다.

-- XML Files은 기본으로 UTF-8이 설정되어 있으므로 Apply-OK를 누르면 된다.

 

4. Class 나타내는 폰트 색상 바꾸기

-- 이 과정은 Class를 알아보기 편하도록 바꾼 것이므로 생략해도 상관없다.

 


Ⅲ. Class(클래스)의 구조

1. 패키지 선언문

-- 패키지란 클래스가 저장되어진 디렉토리 경로라고 보면 된다.

-- package 패키지명; // 패키지명은 반드시 소문자로 시작

예> package my.com;

2. import 문

-- import 패키지명.클래스명;

예> import java.lang.String;

import java.lang.System;

import java.lang.*;

3. 클래스 선언문

-- 클래스명의 첫 글자는 대문자로 시작

-- 또한 저장시 파일명도 class명과 동일하게 해야 하며 확장자는 .java 이다.

-- class body(본체)는 { 로 시작해서 } 로 끝난다.

4. 컴파일하기

5. 실행하기

-- Ctrl + F11 : 클래스 실행 단축키

Ⅳ. Escape 문자(제어 문자)

-- 인쇄할 수 없거나 키보드로 표현할 수 없는 특별한 문자를 가리키며, 역슬래쉬(\)와 한 개의 문자를 결합하여 작성한다.


1) 문자열 출력하기

-- print는 줄바꿈 없이 문자열 출력하라는 말이다.

System.out.print("Hello, World!"); System.out.print("Hello, World!");

-- println은 문자열 출력한 후 줄바꿈을 하라는 말이다.

-- Eclipse에서 sysout 과 같이 간략하게 입력 후 Ctrl + Space를 누르면 아래에 자동으로 완성된다.

System.out.println("Hello, World!"); System.out.println("Hello, World!");

 

 


 

-- \n : 개행. 스크린(화면)커서의 위치를 다음줄의 처음으로 옮긴다.

   System.out.println(""); System.out.print("\n"); // 두 코드 모두 같은 결과가 나타난다.

-- \t : 수평탭. 스크린(화면)커서를 다음 탭으로 옮긴다. (띄어쓰기 4번과 동일)

-- \r : 캐리지 리턴. 스크린(화면)커서의 위치를 현재 줄의 처음으로 옮긴다. 개행하지는 않고 이 기호 다음에 오는 문자를 덮어 씌운다.

-- \\ : 역슬래쉬를 출력할때 사용한다.

-- \" : 쌍 따옴표를 출력할때 사용한다.

-- \' : 홑 따옴표를 출력할때 사용한다.