<차례>
1. 자바를 왜 쓰는가
2. 통합개발환경 Eclipse 소개 및 기본적인 사용법
자바를 왜 쓰나요???
1. 단순하다
C언어를 접해보신 분들을 대부분 포인터라는 개념을 알 것입니다. 포인터란 컴퓨터의 RAM에 저장되어있는 값을 편하게 불러오기 위해 ' * 포인터 변수 '를 선언하여 해당 값이 들어있는 주소를 가리켜 값을 불러오는 것을 뜻합니다.
그러나 자바에는 포인터라는 개념이 없습니다.
만약 자바에서 *변수를 사용한다면 'hashcode'라는 아스키코드 형태의 이상한 값이 나오게 됩니다. (해쉬 코드는 주소 아님)
그래서 자바는 포인터 없이 더욱 편하게 값들을 불러올 수 있는 방식을 제공합니다.
2. 객체 지향 언어이다.
' 객체 지향 ' 자바를 하면서 가장 많이 들을 단어 중 하나입니다.
객체지향이란, 독립적인 각각의 객체로 프로그램이나 시스템을 구성하는 일을 뜻합니다.
예를 들어보겠습니다.
자동차 공장에서는 하는 일이 많습니다. 차체 만들기, 바퀴와 휠, 차량 내부, 도색, 엔진 등이 있죠.
그리고 이 일들은 해당 일만을 전문적으로 하는 인원들로 인해 구성되고 이 인원들이 각자 맡은 바를 하여 차를 만듭니다.
자바는 이와 같습니다. 하나의 자동차를 만들기 위해서 예를 들어 차체를 전문적으로 만드는 A, 엔진을 다루는 B, 도색을 하는 C 시스템 등을 만듭니다. 그리고 차체를 만들어야 할 때 A를 불러 쓰고, 엔진이 필요할 때 B를 불러쓰죠.
이들 A, B 개별을 객체라고 합니다. 오직 자신이 맡은 바만을 하는 것이고, 우리는 그것이 필요할 때만 골라서 사용하는 것이죠.
그리고 이러한 객체를 주로 클래스(class)로 선언하여 쓰곤 합니다.
이렇게 자동차를 만드는 코드를 작성한다고 하면 꼭 그에 관련된 객체들은 main함수가 있는 곳에 같이 있어야 할까요?
아닙니다. 저희는 위의 예시를 가져와 엔진을 만드는 B라는 클래스를 만들었습니다. 그러나 만약 엔진을 만드는 사람이 공장 밖을 나가면 더 이상 자동차 공장의 엔진 담당이라는 지위를 잃나요? 그렇지 않죠. 즉, 이러한 객체 개별은 우리가 컴퓨터 상으로 접근만 할 수 있으면 어디 있든 상관없다는 것입니다.
하나의 일을 담당하는 객체가 어디에 있든지 상관없이 이를 가져와 해당하는 일만을 시킬 수 있습니다.
그리고 객체가 해당하는 일만을 독립적으로 하게 하는 것이 '객체지향'입니다.
(자세한 정보는 class를 배우면서 보실 수 있습니다)
3. 플랫폼 독립적이다
하나의 플랫폼에서 만든 자바 프로그램은 다른 플랫폼에서 다른 작업 없이 실행이 가능합니다.
4. 사람에게 편한 번역 언어이다
자바의 프로그램 소스는 중간 코드인 바이트코드로 변환되고, 바이트코드는 자바가 상기계에서 인터프리터의 도움으로 실행된다.
이외에도 분산처리를 지원한다, 견고하다, 안전하다, 이식성이 좋다, 멀티스레딩을 지 원한다, 동적이다 등이 있습니다.
통합 개발환경
○필요성
매우 간단한 자바 프로그램은 메모장에서 .java 파일로 작성한 후 컴파일 가능
하지만 여러 개의 파일로 된 프로젝트라면 메모장만으로는 어렵습니다.
메모장 대신에 통합 개발 환경(IDE, Integrated Development Environment)을 이용하면 효율적으로 관리 가능
대표적인 자바 통합 개발 환경은 이클립스, 넷빈즈(NetBeans), 인텔리 J 아이디어(IntelliJ IDEA) 등
여기서는 이클립스(eclipse)를 사용
https://www.eclipse.org/downloads/ (이클립스 다운로드)
자바 프로젝트 생성 후 밑에서 패키지나 클래스를 생성할 수 있습니다.
하나의 Java Project를 생성하면 밑에 src라는 파일과 라이브러리가 자동으로 생김.
src에서 소스파일들을 모아 관리하기 때문에 src안에 클래스나 패키지 생성합니다.
클래스들은 하나의 패키지에 모으는 게 원칙이라서 만약 src에 그냥 클래스를 생성하면 default package가 자동으로 생성되어 해당 클래스를 패키지 안으로 넣습니다.
여기서 3번의 경우에는 main함수를 자동으로 입력해주는 것이나 선택사항이긴 하다.
패키지나 클래스 이름 지을 때 주의사항!
패키지의 이름은 무조건 영어 소문자로만 구성되어야 함.
- 프로젝트를 짜다 보면 다른 패키지에 있는 클래스를 불러올 일이 생기는데 여기서 Java는 만약 영어 소문자로 구성이 되지 않을 시에 이를 패키지라고 인식하지 않습니다.
클래스의 이름은 무조건 대문자로 시작!
- 자바를 하면서 클래스를 만들 일이 가장 많을 텐데 위와 마찬가지로 Java는 클래스를 탐색할 때 시작하는 문자가 대문자인 것을 먼저 찾기 때문에 이외에는 클래스라고 인식하지 않습니다.
(이를 지키지 않으면 어차피 생성전에 오류 메시지 뜹니다)
이클립스의 코드 박스는 특정 단어를 입력하면 해당 알파벳이나 단어가 포함되는 자바 내 문법을 이 박스를 통해 자동완성처럼 제공합니다.
사용하면 삶이 윤택해지는 단축키입니다. 자바의 절대적인 장점 중 하나입니다. 이러한 단축키를 통해 자동완성을 하여 작업 시간을 줄이곤 합니다.
이상 자바를 배우기 시작하는 데 있어서 알아야 할 기초적인 상식들에 대해서 알아봤습니다. 저도 절대적으로 잘하는 것이 아니지만 제가 아는 한 한 번 끄적여봤습니다! 감사합니다
'코딩 > JAVA Basics' 카테고리의 다른 글
[자바 JAVA] 다형성 (0) | 2022.12.05 |
---|---|
[자바 JAVA] 상속 (0) | 2022.12.05 |
[자바 JAVA] 클래스와 객체 (2) | 2022.12.05 |
[자바 JAVA] 참조 변수, 문자열, 배열 (0) | 2022.12.04 |
[자바 JAVA] 변수, 자료형, 연산자 (0) | 2022.11.07 |
댓글