1. 객체지향 언어
2. 플랫폼 독립적(아키텍처 중립적)
3. 멀티스레드 지원
4. 뛰어난 보안성
5. 고성능
6. 모듈화
<절차 지향 vs 객체 지향>
1. 절차 지향 프로그래밍
- ex) 자동차를 만들 때 전체를 하나의 몸체로 만든다.
- 바퀴, 엔진, 핸들... 등이 하나로 뭉쳐져 있다.
- 단점:
a. 한 부분이 고장나면 전체가 동작하지 않는다.
b. 그리고 유지 보수에 어려움이 있다.
c. 개발 기간이 오래 걸리고 비용이 많이 든다.
d. 협업이 어려움.
- 장점:
a. 섬세한 코딩 가능.
b. 메모리 사용이 적다.
c. 작은 규모의 프로그램에 적합.
2. 객체 지향 프로그래밍
- ex) 자동차를 만들 때, 부품 별로 미리 만들어 두고, 나중에 한번에 조립하는 형태
- 장점:
a. 한 부분이 고장나도 다른 부분 동작 가능.
b. 유지 보수가 쉬움.
c. 개발기간이 짧고 비용도 적게 듬.
d. 협업이 가능.
- 단점:
a. 메모리의 사용이 좀 더 많음.
b. 불필요한 부분까지 프로그램에 포함된다.
c. 대규모의 프로그램에 적합.
* 개발 환경 설정
1. JDK 설치 (java.sun.com)
- 환경변수 설정
내 컴퓨터 우클릭 -> 속성 -> 고급 시스템 설정 -> 고급 탭 -> 환경변수 설정
-> 시스템 변수에 추가 -> 변수이름 JAVA_HOME, 변수 값 JDK가 설치된 디렉토리 입력 -> 시스템 변수 안에 Path에 -> %JAVA_HOME%\bin 추가
2. 개발도구 eclipse 설치 (eclipse.org)
* 컴파일 및 실행
컴파일 명령어: javac HelloWorld.java
실행 명령어: java HelloWorld
* 세미콜론(;), 블록({}), 공백(whitespace)
- 논리적인 한 문장이 끝날 때 반드시 세미콜론을 붙여줍니다.
- 블록은 중괄호로 묶은 부분을 말하며, 복합문을 구성하는 요소입니다.
즉, 종속된 문장이 다수 개일때,' { ' 로 시작하고 ' } '로 닫습니다.
- 공백은 빈칸, 탭, 빈 줄 등이 있으며, 이러한 공백은 소스코드를 보기 좋게 하고 알아보기 쉽게 하는데 사용합니다. 즉, 프로그램을 구조화 형태로 표현하는데 유용합니다.
* 주석문과 식별자
- 주석문(Comment):
1. 주석은 프로그램의 실행에는 전혀 영향을 미치지 않습니다.
2. 코드를 입력한 후 그 코드를 이해하기 쉽도록 첨언하는 기능입니다.
3. 코드에 주석을 달아 프로그램을 수정하거나 변경할 때 시간과 노력을 절감할 수 있습니다.
* 주석의 종류
1. 한줄 주석(//): 주석 내용이 한줄일 때 사용. // 다음부터 그 줄의 끝까지의 내용이 주석으로 간주됩니다.
2. 여러 줄 주석(/* ~~~~~ */): 여러 줄의 주석이 필요할 때 사용. /* ~~ */ 사이의 내용이 모두 주석처리됩니다.
3. document 생성용 주석(/** ~~~ */) : API 문서 생성용 주석입니다.
* 식별자(identifier)
- 자바 언어에서 식별자는 클래스명, 변수명, 메서드명 등 사용자가 만들어서 이용하는 고유한 이름을 식별자라고 합니다.
- 식별자 생성 규칙(꼭 지켜야할 규칙)
1. 대,소문자를 구분하고 길이 제한은 없습니다.
2. 문자와 숫자, 밑줄(_), 달러기호($)를 포함할 수 있습니다.
3. 문자, 밑줄, 달러기호로 시작할 수 있습니다.
4. 숫자로는 시작할 수 없습니다.
5. 공백을 포함할 수 없습니다.
6. 키워드(예약어)는 식별자로 사용할 수 없습니다.
* 식별자 이름 규칙(개발자들의 약속)
1. 클래스/인터페이스 이름 규칙
- 명사나 형용사를 서술적으로 연결하여 사용합니다.
- 첫글자는 대문자로 표기합니다.
- 연결된 단어의 첫 글자도 대문자로 표기합니다.
ex) HelloWorld, MyCalculator
2. 변수 이름 규칙
- 명사적 의미를 갖게 만듭니다.
- 첫글자는 소문자, 연결 단어의 첫글자는 대문자로 표기합니다.
ex) customerAge, phoneNumber
3. 메서드 이름 규칙
- 동사적 의미를 갖게 합니다.
- 첫글자는 소문자, 연결 단어의 첫글자는 대문자로 표기합니다.
- 메서드 이름 뒤에는 반드시 한 쌍의 괄호"()"가 뒤따릅니다.
- 일반적으로 메서드 이름에는 "_"를 사용하지 않습니다.
ex) writeView(), join()
4. 상수 이름 규칙
- 모든 문자는 대문자로 표기합니다.
- 단어와 단어 사이는 "_"로 연결합니다.
ex) NUMBER_ONE, LOGIN_OK
* 프로젝트 export/import 방법
1. export: 프로젝트 우클릭한 후, export 누르고 General탭에 Archive File 저장명 입력하고 finish
//동일한 프로젝트명이 존재하면 import 할 수 없음
2. import: 이클립스 file -> import , Existing ~~ 누르고 select Archive file -> 압축파일 로드