1. 프로그래밍
(1) 프로그램(Program)
: 컴퓨터가 인식할 수 있는 명령어의 나열(집합)
(2) 프로그래밍(Programming)
: 프로그램을 작성하는 과정, =코딩
(3) 프로그래머(Programmer)
: 프로그램을 작성하는 사람
2. 프로그래밍 언어
: 프로그램을 작성하기 위한 언어 체계, 사람이 컴퓨터와 소통하게 하는 요소
위의 차트는 2022년 2월 기준으로 가장 인기 많은 언어들의 순위를 나타내었다.
현재 Python이 1위, 그 다음으로 Java, JavaScript, C/C++, C#이 상위권을 차지하고 있는데,
이 중에서도 Java는 우리나라에서 가장 많이 쓰이고 있다.
3. Java 언어의 특징
(1) 운영체제에 독립적이어서 이식성이 높다.
(2) 사용하기 쉬운 언어(포인터, 메모리)
① 다른 언어의 단점을 보완
② 객체 지향 언어
③ 능률적이고 명확한 코드 작성 가능
(3) 자동 메모리 관리(Garbage Collection)
(4) 네트워크와 분산 환경 지원
(5) 멀티 스레드를 쉽게 구현할 수 있다.
(6) 동적 로딩(Dynamic Loading)을 지원한다.
(7) 오픈 소스 라이브러리가 풍부하다.
4. JVM(Java Virtual Machine)
: Java를 실행하기 위한 가상 기계, Byte Code(class 파일)를 해석하고 실행하는 Interpreter, 운영체제와 Java 프로그램을 연결시켜주는 역할
5. Java 개발 환경
▷ 설치 범위
: 사용자 / 개발자 입장에 따라 설치 범위가 달라진다.
6. Java 프로그래밍 기본
▷ 패키지(Package)
: Project 내 src 폴더 내에 존재하는 소스 코드들을 보관하는 폴더
- 서로 연관돼 있고, 비슷한 역할을 수행하는 소스 코드(class)들을 묶어서 보관함.
▷ 클래스(Class)
- Java에서 모든 코드는 반드시 클래스 안에 존재해야 하고,
- 서로 관련된 코드들을 그룹으로 나눠 별도의 클래스 구성
- 클래스들이 모여 하나의 Java 애플리케이션을 구성
- 클래스명은 무조건 대문자로 시작
public class 클래스명 {
/*
* 주석을 제외한 모든 코드는 블록 {} 내에 작성
*/
}
▷ 메소드
: 클래스의 기능(동작)에 해당하는 구현 부분
- 해당 메소드 호출 시 메소드의 블럭 { } 에 해당하는 부분을 실행
public class 클래스명 {
public void 메소드명() {
// 실행될 문장들을 적는다
}
}
▷ 실행 메소드(main 메소드)
: 'public static void main(String[] args)'는 main 메소드의 고정된 선언부
- 프로그램 실행 시 java.exe에 의해 호출됨
- 모든 클래스가 main 메소드를 가지고 있어야 하는 것은 아니지만 하나의 Java 애플리케이션에는 main 메소드를 포함한 클래스가 반드시 하나는 있어야 함
public class 클래스명 {
// 메인 메소드의 선언부
public static void main(String[] args) {
// 실행될 문장들을 적는다
}
}
▷ 주석(Comment)
: 코드에 대한 설명이나 그 외 다른 정보를 넣을 때 사용하는 것
- 컴파일 시 컴파일러가 주석 부분은 건너뜀
- /* */: 범위 주석, /* */ 사이 내용을 주석으로 간주
- //: 한 줄 주석, // 뒤의 내용을 주석으로 간주
▷ 출력 메소드
▶ System.out.print()
: () 안의 변수, 문자, 숫자, 논리 값을 모니터에 출력해주는 메소드
- 예) System.out.print("Hello World!");
System.out.print(123456);
☞ Hello World!123456
▶ System.out.println()
: print문과 동일하게 출력하지만, 출력 후 자동으로 출력창에 줄바꿈을 해주는 메소드
- 예) System.out.println("Hello World!");
System.out.println(123456);
☞ Hello World!
123456