1) 개발 환경 구축
1.1 JDK 설치 및 환경 설정.
- 오라클 회원가입, JDK 1.8버전 다운로드 및 설치
- https://www.oracle.com/kr/java/technologies/javase/javase-jdk8-downloads.html
- 내컴퓨터 > 속성 > 고급시스템설정 > 환경변수 > 시스템 변수 에서 새로 만들기
- 이름: CLASSPATH, 값 : .;
- 이름: JAVA_HOME, 값 : C:\Program Files\Java\jdk1.8.0_281 (JDK 설치 경로)
- 시스템 변수 에서 path 클릭 후 편집 > (새로만들기) %JAVA_HOME%\bin > 확인
- 기존 CMD창 종료 후 재실행. javac 명령어 입력하여 환경변수 설정 확인
1.2 자바 통합 개발툴(IDE) : 이클립스, 넷빈즈와 같은 개발 도움 툴을 사용
- 넷빈즈 다운로드: https://netbeans.org/downloads/old/8.2/
- java SE : 순수한 자바를 개발 (다운로드)
- java EE : 자바 웹 개발
- 컴파일러 : java,c,c++
└ 인간이 작성한 명령어, 문법을 기반으로 작성한 프로그램을 기계가 인식할 수 있도록 번역하는 과정
- 인터프리터, JIT : java,jsp, python,php,asp
└ 명령어, 문법을 기반으로 작성한 프로그램을 실시간 기계가 인식할 수 있도록 통역(해석)하는 과정
1.3 넷빈즈(NetBeans)에서 자바 프로그램 실행하기
- 프로젝트, 패키지, 클래스 만들기, 컴파일 및 실행.
- Project창에서 우클릭 > New Project > Java App 선택 > Project Name 입력 후 Finish
- Project 우클릭 > New > Java Package > Package Name 입력 후 Finish
- Packages 우클릭 > New > Java > New Class > Class Name 입력 후 Finish
- 클래스를 만드는 규칙 (식별자 규칙) : 대문자로 시작한다!!!
└ 숫자,특수문자 등으로 시작할 수 없다, $ : 내부클래스 예약어
1.4 자바의 특징.
- 운영체제에 독립적이다.(이식성)
- 객체 지향이다.(재사용성에 맞게 클래스를 설계이다.)
- 캡슐화(정보은닉), 다형성, Pojo 등 으로 객체지향적인 프로그램을 설계
- 클래스는 다른 클래스와 관계를 가진다.
- ( has a : A란 클래스가 B란 클래스를 사용하기 위해서 참조하는 관계
- is a : 상속관계, 부모를 자식이 확장하는 관계 )
- 메모리를 자동으로 관리(GC) 힙(Heap) 영역에 생성되는 객체
- 멀티 스레드(Multi-Thread) 쉽게 구현 가능
- 소켓 통신이 쉽게 구현이 가능하다.
1.5 자바의 실행 흐름
- [javac 클래스] > [java(jvm)] > 클래스 안의 main메서드를 찾아서 호출
- 자바의 모든 연산은 JVM(자바 가상머신) 에서 이루어진다.
- 클래스 영역, 메서드 영역 , 변수 > 지역변수 (소스코드 상세설명 참조 Ex1_Variable )
소스 코드
package ex1;
public class Ex1_Variable {
// Variable : 값을 저장할 수 있는 메모리의 공간을 의미한다.
// 변수는 하나의 값을 저장한다.
// 변수에는 자료형을 가지고 선언 한 후 초기화해서 사용한다.
// 자바에서는 변수를 선언 할때 반드시 자료형을 선택해서 선언해야 한다.
public static void main(String[] args) {
// local block - 메인 메소드 영역
// 지역 변수 선언 *****
// step1) 선언한다.
// [자료형] [변수명];
// step2) 지역 변수는 반드시 초기화해서 사용해야 한다.
int num1 = 0;
// 변수를 출력해보기
System.out.println(num1);
System.out.println("실행1!");
// 대입 연산자 =
// A = B , A에 B를 대입한다. (대입연산자)
// 선언은 오직 같은 영역에서 한번만 한다.
num1 = 100;
// 변수를 출력해보기
System.out.println(num1);
System.out.println("실행2!");
String str = new String("aa");
// 문자열 저장 "문자열 값"
// 참조자료형 변수 : 문자열의 주소값을 저장한다.
String name = "홍길동";
System.out.println("나의 이름은 : " + name);
System.out.println("나의 점수는 : " + num1 + "점");
}
}
package exam;
// int -> 정수를 저장하기 위해서 자료형
// String -> 문자열을 "....."; 저장하기 위해서 자료형 변수로 선언
// java_0126 과제 : 자료형과 변수명 작성 후 값을 대입하여 출력하기.
public class Exam {
// main 메서드 선언.
public static void main(String[] args) {
// 이름 변수를 문자열로 선언하며 초기화한다.
String name = "";
// 나이 변수를 정수형으로 선언하며 초기화한다.
int age = 0;
// 허준의 프로필 값을 변수들에게 대입해준다.
name = "허준";
age = 29;
// 대입된 허준의 프로필을 출력해준다.
System.out.println("그의 프로필");
System.out.println("이름 : " + name);
System.out.println("나이 : " + age + "세");
// ==================================
// 안녕하세요. 나의 이름은 허준입니다.
// 허준의 프로필을 시작하겠습니다.
// 이름 : 허준
// 나이 : 29
// 29세 이기 때문에 저는 성인입니다
// ==================================
// 작업순서
// 1. main 메서드를 정의한다
// 2. main 메서드 영역 안에 변수를 선언 및 초기화 한다.
// 3. 변수를 사용한다
}
}
'JAVA > Study' 카테고리의 다른 글
| [세미 프로젝트] 4. GUI 제작 및 테이블, DTO 설계, 추상메서드 (0) | 2021.03.15 |
|---|---|
| [0201] 5. 제어문 (if,for,forfor), static 멤버 변수 (0) | 2021.03.01 |
| [0129] 4. 연산자, 조건문(if else) (0) | 2021.03.01 |
| [0128] 3. Wrapper 클래스, static 메서드, 메서드 문법 (0) | 2021.03.01 |
| [0127] 2. 변수와 타입 , String 클래스의 특성, Scanner 사용 (0) | 2021.03.01 |