티스토리 뷰

IT/JAVA

1. 자바의 개요

a-toz 2017. 11. 9. 18:38

HW - OS(운영체제) - 프로그램(C, Python 등)

HW - OS(운영체제) - JVM - 프로그램(Java)

                    JDK - 자바개발도구


Java 버전

 1.SE(Standard Edition) : 일반 응용 프로그램 개발, 안드로이드

 2.ME(Micro Edition) : Embedded 용

 3.EE(Enterprise Edition) : Web Programming


=>SE 버전을 설치하고 WAS(Tomcat 이 대표적)를 설치하거나 Spring 을 이용하면 Web Programming 이 가능


자바 다운로드 : www.oracle.com

=>Oracle, MySQL, Java 모두 Oracle 제품


Java 설치

 1.Java SE 1.8 버전을 다운로드

 2.설치 - 자바만 개발할 때는 문제없음

 3.환경변수 설정

  1)PATH : 명령어를 줄여쓰기 위한 환경변수 - 반드시 기억

  2)JAVA_HOME : 다른 프로그래밍언어에서 자바로 만들어진 라이브러리를 사용할 때 참조할 위치

  3)JRE_HOME : 자바로 만들어진 프로그램이 사용할 JVM 위치 설정 - 거의 무조건 설정


환경변수 설정 : 윈도우 속성 탭에서 작성

1. [탐색기 실행] - [컴퓨터]를 선택하고 마우스 오른쪽을 클릭해서 [속성]을 선택


2.화면에서 [고급 시스템 설정] 클릭


3. 환경변수 클릭


제대로 설정했는지 확인

- Command 창에서 java -version(자바 실행) , javac -version(자바 개발)


Eclipse 설치

- www.eclipse.org


프로그램 개발 과정


1.코딩 - Source File 작성


2.컴파일 - Source File을 실행 가능한 상태로 변경

           이 때 문제가 발생하면 이것은 문법적 에러 - 오류

           내용을 수정하고 다시 컴파일


3.실행 - 이 때 문제가 발생하면 이것은 예외

         내용을 수정해야 하는 경우도 있고 어쩔 수 없는 경우도 있습니다.


자바 소스 파일 작성 과 실행

- 자바 소스 파일은 실행할 클래스이름.java로 만들어져야 합니다.

- 컴파일: 개발자가 작성한 소스 파일의 내용이 문법적으로 맞는지 검사하고 실행 가능한 형태로 변경해주는 작업

java 의 컴파일 명령어 : javac 소스파일명

command 창에서 cd 소스파일경로 : 소스파일 디렉토리로 이동

컴파일이 완료되면 파일이름.class가 만들어집니다.


- 실행(run) : java 클래스이름


IDE(통합 개발 환경) : 소스 파일을 작성하고 컴파일 및 실행을 쉽게 할 수 있도록 도와주는 프로그램

 1.Java IDE : Eclipse(플러그 인이 많아서 수행할 수 있는 작업이 많기 때문에 국내에서 많이 사용), NetBeans(오라클에서 제작), IntelliJ(Android Studio, Pycharm, 코틀린을 만든 회사에서 제작), EditPlus 등


 2.Eclipse 설치 : www.eclipse.org


 3.환경 설정 : [windows] - [preferences]


 4.Eclipse는 프로젝트(디렉토리와 유사한 개념) 단위로 작업

=> 일반 자바 응용 프로그램 프로젝트 : [File] - [New] - [Other]를 선택하고 Java - Java Project 선택

=> 프로젝트에 자바 파일을 만들기 : src 디렉토리를 선택하고 마우스 오른쪽을 클릭해서 [New] - [class]


자바 프로그램 의 기본 규칙

1.자바 프로그램은 반드시 하나 이상의 클래스로 구성

2.자바 응용프로그램은 반드시 1개의 main을 가져야 합니다.

=>이클립스에서 작업할 때는 main을 여러 개 갖도록 프로젝트를 만들 수 있는데 이 때는 실행할 클래스를 선택하고 run을 수행


프로젝트(디렉토리) - 클래스(파일) - 메소드(작업)

                                  - 변수(저장)

=>프로젝트 : 동일한 목적을 가진 파일의 집합

=>클래스 : 일관성있는 작업들의 모임


=>자바의 main

public static void main(String [] args){


}


=>System.out.println("메시지") : 메시지를 화면에 출력

println 대신에 print 사용 가능 : println은 메시지를 출력하고 자동 줄 바꿈을 하지만 print는 자동 줄 바꿈을 하지 않습니다.


System.out.println("메시지");

System.out.println("출력");


메시지

출력


System.out.print("메시지");

System.out.print("출력");


메시지출력


안녕하세요

반갑습니다 제 이름은 박 문석입니다.

위처럼 출력



;은 한번에 실행되어야 하는 코드를 구분하기 위한 기호

하나의 명령어 끝마다 ;을 붙여 주어야 합니다.


{ 코드 } : 한번에 해석해야 하는 코드 블럭을 만드는 것 입니다.

클래스와 메소드는 필수


class 클래스이름{ 코드 }

결과형 메서드이름(){ 코드 }


주석(comment): 프로그래밍 언어가 해석하지 않는 코드

자바에서는 // 는 한 줄 주석

/* 0줄 이상의 주석 */


에러가 발생하면 콘솔 창에 빨간색으로 에러 내용이 출력됩니다.

콘솔 창에 에러 내용이 있으면 그 코드 영역으로 가서 수정


"0개이상의 문자 집합" => 문자열

'1개문자' => 문자


문자열 결합 가능

"Hello" + "World" => "HelloWorld"


문자열 과 숫자도 결합 가능 : 문자열로 변환

"Hello" + 10 => "Hello10"


10 + 30 => 40


"10" + "30" => 1030


System.out.println("Hello" + 10);

printf("%s%d", "Hello",10);


* 상수와 변수

1.상수(Literal, Constant): 변하지 않는 값

                           영구적인 영역에 저장됨

                           여러번 사용할 때는 좋지만 한번만 사용할 때는 사용되지 않는데도 메모리를 차지하고 있어서 메모리 낭비를 초래합니다.


2.변수(Variable): 메모리 영역에 붙여둔 이름

                  하나의 영역에 여러 번 값을 변경하면서 저장할 수 있기 때문에 메모리 낭비를 줄일 수 있지만 상수 보다 접근 속도는 느립니다.


*변수 만들기와 데이터 대입 및 값 가져오기

1.변수 만들기

자료형 변수명;


2.데이터 대입

변수명 = 값;


3.데이터 가져오기

변수이름


*정수

1.정수 자료형

byte(1byte), short(2byte), int(4byte), long(8byte)


2.정수 상수

정수를 쓰면 int 

17은 int 형 17


long 형 정수 상수를 만들 때는 뒤에 L을 추가

17L 은 long 형 17


*문자

1.문자 자료형

char(2byte) : 실제 저장은 ASCII code 값이 저장되고 출력할 때만 문자로 출력됩니다.


2.문자 상수

 1)일반 문자 상수 : '문자' 로 사용(ex - 'A', 'a')

 2)제어문자 : 특수한 기능을 가진 문자 상수로 \로 시작

              \n: 줄바꿈 \t: 탭 \a: 비프음 \\: \


연습문제

 0-200까지의 나이를 저장할 수 있는 변수를 생성해서 자신의 나이를 저장하고 성별은 M 또는 F로 저장할 수 있도록 변수를 생성하고 자신의 성별을 저장한 후 출력


*실수

1.실수 자료형

float(4byte), double(8byte)

=>수치 보조 프로세서의 연산 단위는 double 입니다.


2.실수 상수

1)float 형 상수는 뒤에 f를 붙입니다.

3.7f, 2.456f 등


2)double 형 상수는 아무것도 붙이지 않습니다.

2.4 , 7.678 등


**자료형 크기

byte < short < char < int < long < float < double 

=>작은 자료형의 데이터는 큰 자료형의 변수에 대입이 가능하지만 큰 자료형의 데이터는 작은 자료형의 변수에 대입이 되지 않습니다.


byte age = 200; 에러 byte는 -128 부터 127까지만 저장

                       200은 short 크기에 해당하기 때문입니다.

float f = 2.7; 에러입니다.

int x = 3.4;


앞의 예제에 신장을 저장할 수 있는 변수를 만들고 저장한 후 출력

키는 소수 첫째짜리까지 저장


실수를 가지고 여러번 반복 연산을 수행하면 문제가 발생할 가능성이 있으므로 여러번 반복 연산을 할 때는 정수를 가지고 작업을 한 후 나누기를 해야 합니다.


*boolean

참과 거짓 2가지를 저장할 수 있는 자료형

1.boolean 상수

true, false


2.is 라는 이름으로 시작하는 메소드는 무조건 결과를 boolean으로 리턴합니다.

모든 프로그래밍언어에서 공통으로 적용


*기본형(Primitive Type): 데이터를 저장할 때 하나의 값(Scala) 만을 저장하는 자료형

boolean, byte, short, int, long, char, float, double : 8개


*참조형(Reference Type): 0개 이상의 데이터를 하나의 이름으로 저장하기 위한 자료형

1)배열(Array): 동일한 자료형의 모임

2)클래스(Class): 서로 다른 자료형의 모임

=>특수한 클래스 ->String : 문자열(0개 이상의 문자의 집합)을 저장하기 위한 클래스

문자열을 저장할 때는 String 타입의 변수를 만들어서 저장하면 됩니다.

문자열은 "" 안에 문자를 나열하면 됩니다.

Hello를 저장

String str = "Hello";


오늘 연습문제

이름과 주소 그리고 전화번호 및 나이를 저장할 수 있는 변수를 생성하고 데이터를 저장한 후 출력


String    name

String    address

String    mobile(-는 생략하고 저장) : 0으로 시작하기 때문에 잘못하면 8진수로 인식을 할 수 있습니다.

전화번호나 생년월일같은 데이터는 문자열로 저장해야 합니다.

String    birth(월과일만 저장)

int    age


=>숫자로 해야 할지 문자열로 해야할지 판단이 잘 안될 때는 문자열로 하는 것이 좋습니다.


































'IT > JAVA' 카테고리의 다른 글

6. Java 주요 클래스  (0) 2017.11.09
5. Java 상속과 다형성  (0) 2017.11.09
4. Java 클래스 기본 개념  (0) 2017.11.09
3. Java 제어문  (0) 2017.11.09
2. Java 연산자  (0) 2017.11.09
댓글