- 프로그래밍 의미
프로그램(Program) : 컴퓨터가 인식할 수 있는 명령어의 나열(집합)
프로그래밍(Programming) : 프로그램을 작성하는 과정 = 코딩
프로그래머(Programmer) : 프로그램을 작성하는 사람
프로그래밍 언어 : 프로그램을 작성하기 위한 언어체계, 사람이 컴퓨터와 소통하게 하는 요소
자바 언어 특징
1. 운영체제에 독립적(이식성이 높음)
2. 사용하기 쉬운 언어
- 다른 언어의 단점 보완(포인터, 메모리 관리)
- 객체 지향 언어
- 능률적이고 명확한 코드 작성 가능
3. 자동 메모리 관리(Garbage Collection)
4. 네트워크와 분산환경 지원
5. 멀티스레드 지원
6. 동적 로딩 지원
JVM(Java Virtual Machine)
: 자바를 실행하기 위한 가상 기계로 플랫폼에 의존적 byte code(class파일)를 해석하고 실행하는 interpreter
위의 그림을 설명하면
컴파일된 바이트코드를 jvm 각각의 os의 맞게 가동시킨다.
컴파일 : .java(자바언어를 사용해서 작성한 파일) -> 컴퓨터가 실행할 수 있는 .class(byte code) 변경
- 자바 개발 환경
JDK : 자바 개발 도구의 줄임말로, 자바로 프로그램을 개발할 수 있는 실행 환경(JVM)과 개발 도구(컴파일러)등을 제공한다.
→ java(자바코드를)로 .class (바이트코드)로 바꿔주는 컴파일 해주는 환경이 jdk 안에 있으며
→ 우리는 개발하기 위해 jdk가 필요하다.
- 자바 설치
*1.8기준으로 자바 환경 설정 설명
1. Open JDK 1.8 다운로드(https://github.com/ojdkbuild/ojdkbuild 접속
2. Downloads for Windows x86_64 (1.8.0_292-1 클릭하여 다운로드)
C:\Program Files\Java\openJDK1.8 폴더를 만들고 압축 풀기
- 자바 설정(환경 변수)
‘내 PC’ 오른쪽 클릭 - 속성 -> 고급시스템 설정 -> 고급 - 환경변수
- 이클립스 설치
1. 이클립스 다운로드 홈페이지(www.eclipse.org/downloads/)
2. 최신 버전이 아닌 이전 버전을 찾기 위해 Download Packages 클릭
3. 오른쪽 MORE DOWNLOADS에서 Eclipse 2020-03(4.15) 클릭(아래 사진)
- 자바 프로그래밍 순서
- 패키지, 클래스, 메소드
실행결과
주석 : 코드에 대한 설명이나 그 외 다른 정보를 넣을 때 사용
*코드를 쓰고 싶을 떄
1. 프로젝트 만들기 => 하나의 프로젝트가 하나의 프로그램
2. 패키지(=폴더) 만들기 => 파일을 분류해서 관리함 -> .으로 하위폴더 만들기
3. 클래스 만들기 => 코드를 작성하기 위해
클래스 : 자바에서 모든 코드는 반드시 클래스 안에 존재
서로 관련 된 코드들을 그룹으로 나누어 별도의 클래스 구성
클래스들이 모여서 하나의 Java application 구성
(클래스 밖에는 아무런 코드를 쓸 수 없음 클래스 안에 메소드가 있는 것)
메소드 : 클래스의 기능(동작)에 해당하는 구현 부분으로 내가 하고 싶은 일을 작성하는 공간(어떠한 동작하고 싶을 때 동작하는 내용을 작성하는 부분)
해당 메소드 호출 시 메소드의 블럭({}) 에 해당하는 부분 실행
항상 프로그램 시작 시 main 메소드에서 시작
프로그램을 실행하기 위해 필요한 특수 메소드
하나의 Java Application에는 main 메소드를 포함한 클래스가
반드시 하나는 있어야 함
public class A_MethodPrinter {
public void methodA() {
System.out.println("Method A가 호출 되었어요!");
methodB(); // 메소드b 부르기. 같은 공간에 있으니 인식 가능하기 때문에 그냥 호출 가능(그냥 불러도 인식함)
}
public void methodB() {
System.out.println("Method B가 호출 되었어요!");
methodC();
}
public void methodC() {
System.out.println("Method C가 호출 되었어요!");
}
}
실행클래스
실행 결과
<명명 규칙>
1. 패키지 => 소문자로 시작
2. 클래스 => 대문자로 시작
3. 메소드 => 소문자로 시작
여러 개의 단어가 있을 때는 각 단어의 앞자리는 대문자로 표기
=> 카멜 표기법 (낙타 표기법)
public void printValue() {
// 여러 가지 형태의 값을 출력하는 기능을 하는 메소드
// printValue가정의되어 있는 파일!
// 1. 숫자 출력
System.out.println(123); // 정수
System.out.println(1.23); // 실수
// 2. 문자 출력 => 홑따옴표(싱글 쿼테이션) 사용
System.out.println('a');
System.out.println('b');
// 3. 문자열 출력 => 쌍따옴표(더블 쿼테이션) 사용
System.out.println("안녕하세요.");
System.out.println("반갑습니다.");
// 4. 내부에서 연산 가능
System.out.println(123 + 456);
System.out.println(1.23 - 0.12);
// => 실수값 연산의 경우 불완전해서 오차 발생 가능(근사치가 저장)
// 5. 문자는 숫자와 연산 가능
System.out.println('a' + 1);
System.out.println('a' + 2);
System.out.println('b' - 1);
System.out.println('가' + 1);
// => 소문자 a는 유니코드로써 97이라는 수를 가지고 있음. 컴퓨터는 문자 -> 숫자로 치환 됨
// 6. 문자열("")과 숫자의 합 => 문자열
System.out.println("안녕하세요" + 1);
System.out.println("반갑습니다" + 22 + 33);
// 문자열과 숫자의 '+'연산
System.out.println(9 + 9 + "9");
System.out.println(9 + "9" + 9);
System.out.println("9" + 9 + 9);
}
위와같이 실행클래스에서 메소드 호출하여 실행한 결과
'kh정보교육원 JAVA' 카테고리의 다른 글
InputStreamReader/OutputStreamWriter (0) | 2021.07.23 |
---|---|
Stream, FileOutputStream, FileInputStream (0) | 2021.07.21 |
KH정보교육원 강남지점 19일차 - java.util.Date class, java.text.SimpleDateFormat calss, (0) | 2021.07.20 |
KH정보교육원 강남지점 JAVA 19일차 - JAVA Wrapper Class, Wrapper String Test (0) | 2021.07.19 |