자바의 특징으로는 크게 7가지의 독특한 특성을 가지고 있습니다.
- 객체지향
- 객체 지향 언어
- 클래스 계층 구조, 상속성, 다형성, 캡슐화 등을 지원합니다.
- 멀티스레드
- 하나의 프로그램에서 다수의 스레드가 동시에 실행할 수 있는 환경을 지원합니다.
- 멀티스레드 프로그램을 작성하기 위해서는, 운영체제가 멀티스레드를 지원하고 관련된 API나 라이브러리를 제공해야 합니다.
- 하지만, 자바는 운영체제의 도움없이 멀티스레드 프로그래밍이 가능합니다.
- 플랫폼 독립성
- 하드웨어, 운영체제 등 플랫폼에 종속되지 않는 독립적인 바이트 코드로 컴파일 되며 JVM만 있으면 자바 프로그램의 실행이 가능합니다.
- 소스와 클래스 파일
- 하나의 자바 소스 파일에는 여러 개의 클래스를 작성할 수 있지만, 하나의 클래스 파일에는 반드시 하나의 컴파일된 자바의 클래스만이 포함됩니다.
- 하나의 자바 소스 파일에 여러 개의 클래스를 작성한 경우, 컴파일 후 클래스마다 별도의 클래스 파일이 생성됩니다.
- 실행 모듈
- 자바의 실행은 main()메소드에서 시작되며, 하나의 클래스 파일에 하나 이상의 main() 메소드가 있을 수 없지만 다수의 클래스 파일이 각각 main() 메소드를 가지는 것은 상관 없습니다.
- 클래스로 캡슐화
- 자바는 객체 지향 언어의 캡슐화의 원칙을 철저히 지켜 변수나 메소드는 반드시 클래스 내에 구현합니다.
- 클래스에 속하지 않은 변수나 메소드는 있을 수 없습니다.
- 클래스 안에 새로운 클래스 , 즉 내부 클래스를 만들 수 있습니다.
- 패키지
- 자바의 독특한 개념입니다.
- 서로 관련 있는 클래스는 패키지로 묶어 관리합니다.
- 패키지는 파일 시스템의 폴더 개념과 같습니다.
반응형
'프로그래밍 > JAVA' 카테고리의 다른 글
JDK?JRE? (1) | 2022.02.15 |
---|---|
자바와 타 언어(c/c++)의 실행 환경 차이 (1) | 2022.02.14 |
JAVA[자바]의 실행환경 (0) | 2022.02.14 |
절차지향언어? 객체지향언어? (2) | 2022.01.16 |
프로그래밍 언어란? (1) | 2022.01.16 |