728x90
자바의 특징
- 객체지향 언어 : 객체지향의 특징인 상속, 캡슐화, 다형성이 잘 적용됨
- 플랫폼 독립성 : 자바 운용프로그램은 운영체제나 하드웨어어가 아닌 JVM(Java Virtual Machine)과 통신.
- 자바 응용프로그램으로부터 전달받은 명령은 운영체제가 이해할 수 있도록 JVM이 변환.
- 멀티스레드 지원
- 네트워크와 분산처리 지원
- 가비지 컬렉션
JVM(자바 가상머신, Java Virtual Machine)
자바 바이트 코드와 컴퓨터의 운영 시스템 간에 번역기 역할을 하여 자바로 작성된 응용 프로그램을 윈도우나 매킨토시, 유닉스 등에서 사용할 수 있도록 해주는 소프트웨어
스레드(thread)
프로세스내에서 실행되는 세부 작업 단위.
멀티 스레드(multi-thread)
1개의 응용 프로그램이 스레드(thread)로 불리는 처리 단위를 복수 생성하여 복수의 처리를 병행하는 것. 즉, 응용 프로그램 내에서의 다중 작업(multi tasking) 처리를 말한다.
가비지 컬렉션(garbage collection)
가비지 컬렉션은 메모리 관리 기법 중의 하나로, 프로그램이 동적으로 할당했던 메모리 영역 중에서 필요없게 된 영역을 해제하는 기능이다.
- 가비지 컬렉션의 장점
프로그래머가 동적으로 할당한 메모리 영역의 전체를 완벽하게 관리할 필요가 없어지고
유효하지 않은 포인터 접근, 이중 해제, 메모리 누수와 같은 버그를 줄이거나 완전히 막을 수 있음
- 가비지 컬렉션의 단점
어떤 메모리를 해제할지 결정하는 데 비용이 든다.
쓰레기 수집이 일어나는 타이밍이나 점유 시간을 미리 예측하기 어렵다.
할당된 메모리가 해제되는 시점을 알 수 없다.
오버로딩(overloading) & 오버라이딩(overriding)
오버로딩 : 메서드의 이름이 같으나 인자의 타입, 갯수, 순서를 다르게 하여 여러개의 메서드를 중복정의하는 것을 말함.
오버라이딩 : 부모클래스에서 상속받은 메서드를 재정의.
728x90
반응형
'JAVA' 카테고리의 다른 글
[ Java ] 추상클래스,추상메서드/인터페이스 (0) | 2022.05.10 |
---|---|
[ Java ] 클래스 변수/인스턴스 변수/지역변수 (0) | 2022.05.10 |
JAVA 용어 정리 [2] 프레임워크/스프링/JSP/JSTL/JQuery (0) | 2022.05.02 |
[Java] 배열 (0) | 2022.04.29 |
[ Java ] 객체지향(Object-Oriented)객체/클래스/상속/캡슐화/접근제한자 (0) | 2022.04.29 |
댓글