본문 바로가기

참고자료

자바의 특징은 무엇일까

요약하자면 4가지를 말할 수 있다.

1. 객체 지향 언어이다. (OOP)

2. 자동 메모리 관리를 해준다. (GC)

3. 운영체제에 독립적이다. 

4. 동적 로딩을 지원한다.

 

 

1. 객체 지향언어

-상속, 다형성, 캡슐화, 추상화의 특징이다. 

 

2. 자동 메모리 관리

- 더 이상 사용하지 않는 메모리는 해제 시켜 준다. 

- JVM 에 있는 Garbage Collection이 자동으로 메모리 관리를 해준다..

- 개발자가 GC 를 해제하고 직접 메모리 관리를 할 수도 있다.

 

3. 운영체제에 독립적이다.

자바는 JVM 위에서 돌아간다. 때문에 CPU나 운영체제의 영향을 받지 않는다.

자바의 멀티스레드 프로그래밍은 운영체제의 지원이 필요없다. (c 나 C++ 은 필요하다.)

 

4. 동적 로딩 지원

- 자바는 어플리케이션이 실행될때 모든 객체가 생성되지 않는다. 

  객체가 필요한 시점에 클래스를 로딩한다.

- 이로서 얻는 이점은 클래스의 일부가 변경되어도 다시 컴파일 해도 되지 않는다는 것이다.

- 하지만 그때 그때 메모리에서 불러오기 때문에 프로그램 실행속도가 정적 로딩에 비해 느리다.

   이를 해결하기 위해서 static 키워드를 사용할 수도 있다.

 

5. 정적로딩이란? 

대표적인 정적 로딩 방법 언어는 c언어이다. 

파일이 메모리에 적재되어 메모리를 많이 차지하지만, 빠르게 자원을 가져오고 사용할 수 있다.

 

 

 

 

'참고자료' 카테고리의 다른 글

JAVA - 추상메소드와 추상클래스 그리고 인터페이스는 왜 쓰는걸까?  (0) 2021.07.02
객체와 클래스  (0) 2021.07.01
aws 기초  (0) 2021.06.11
aws 배포 관련 참고 사이트  (0) 2021.06.08
인코딩과 디코딩  (0) 2021.06.01