~cpp
자바 애플릿이란 HTML 페이지에 포함되어 자바 호환(java-compatible) 웹 브라우저에 의해 실행될 수 있는 된 자바 프로그램입니다. 자바 호환
웹 브라우저가 자바 애플릿이 포함된 HTML 페이지를 보여줄 때, 웹 서버쪽에 있는 자바 애플릿 코드를 다운로드 한 후 브라우저 내의 특정 영역에
서 실행하게 됩니다. 이렇게 자바 애플릿을 HTML 페이지에 삽입하기 위해서는 <APPLET> 태그를 사용해야 합니다.
자바 애플릿은 기본적으로 java.applet.Applet 클래스를 상속하는 하위클래스를 생성함으로써 작성가능한데, java.applet.Applet 클래스는
java.awt.Panel 클래스를 상속하는 하위클래스입니다.
따라서, 자바 클래스는 하나의 패널 컴포넌트가 가지는 모든 기능을 그대로 사용가능하다는 것입니다. 물론, 자바 애플리케이션은 자바 가상머신
에서 독립적인 프로그램으로 실행되고, 자바 애플릿은 자바 호환 웹 브라우저에 의해 웹서버에서 다운로드되어 실행되는 것처럼 실행환경의 차이에
서 오는 약간의 제약은 있습니다. 먼저, 애플릿이 보안상 가지는 단점에 대하여 살펴보면, 다음과 같습니다.
- 애플릿은 라이브러리를 로딩하거나 네이티브 메소드를 정의할 수 없습니다.
- 애플릿이 실행되고 있는 클라이언트 컴퓨터 상의 파일을 읽거나 쓸 수 없습니다.
- 애플릿을 다운로드 받은 서버를 제외한 다른 컴퓨터와의 네트워크는 불가능합니다.
- 애플릿이 실행되고 있는 클라이언트 컴퓨터 상의 어떤 프로그램도 실행할 수 없습니다.
- 몇 가지 시스템 속성을 읽을 수 없습니다.
- 애플릿과 애플리케이션이 사용하는 윈도우는 약간의 차이가 있습니다.
다음으로, 애플릿이 가지는 몇 가지 특징에 대하여 살펴보면, 다음과 같습니다.
- 애플릿은 다운로드 된 호스트와 네트워크 연결을 설정할 수 있습니다.
- 애플릿은 자신이 실행되고 있는 웹브라우저에게 HTML 도큐먼트를 디스플레이 하도록 할 수 있습니다.
- 애플릿은 같은 HTML 페이지에 있는 다른 애플릿의 public 메소드를 호출할 수 있습니다.
- 로컬 파일 시스템에서 로드된 애플릿은 네트워크를 통하여 로드된 애플릿이 갖는 제약을 갖지 않습니다.
- 애플릿은 브라우저가 다른 페이지로 떠날 때 멈추어야 하고, 다시 되돌아 올 때 다시 시작되게 됩니다.