Lớp 1

Lớp 2

Lớp 2 - kết nối tri thức

Lớp 2 - Chân trời sáng tạo

Lớp 2 - Cánh diều

Tài liệu tham khảo

Lớp 3

Sách giáo khoa

Tài liệu tham khảo

Sách VNEN

Lớp 4

Sách giáo khoa

Sách/Vở bài xích tập

Đề thi

Lớp 5

Sách giáo khoa

Sách/Vở bài tập

Đề thi

Lớp 6

Lớp 6 - kết nối tri thức

Lớp 6 - Chân trời sáng tạo

Lớp 6 - Cánh diều

Sách/Vở bài xích tập

Đề thi

Chuyên đề và Trắc nghiệm

Lớp 7

Sách giáo khoa

Sách/Vở bài tập

Đề thi

Chuyên đề và Trắc nghiệm

Lớp 8

Sách giáo khoa

Sách/Vở bài xích tập

Đề thi

Chuyên đề và Trắc nghiệm

Lớp 9

Sách giáo khoa

Sách/Vở bài xích tập

Đề thi

Chuyên đề và Trắc nghiệm

Lớp 10

Sách giáo khoa

Sách/Vở bài xích tập

Đề thi

Chuyên đề và Trắc nghiệm

Lớp 11

Sách giáo khoa

Sách/Vở bài bác tập

Đề thi

Chuyên đề & Trắc nghiệm

Lớp 12

Sách giáo khoa

Sách/Vở bài bác tập

Đề thi

Chuyên đề & Trắc nghiệm

IT

Ngữ pháp tiếng Anh

Lập trình Java

Phát triển web

Lập trình C, C++, Python

Cơ sở dữ liệu


*

khóa đào tạo JavaJava cơ bảnKhái niệm hướng đối tượngFile với I/O vào JavaString trong JavaXử lý nước ngoài lệ (Exception Handling)Cấu trúc tài liệu trong JavaCollection trong JavaJava nâng caoTài liệu tìm hiểu thêm Java
Cơ bản về Applet vào Java
Trang trước
Trang sau

Một Applet là một trong những chương trình Java chạy xe trên một trình chăm bẵm Web. Một applet rất có thể là một ứng dụng Java không hề thiếu tính năng chính vì nó có toàn bộ Java API tại cách sắp xếp của nó.

Bạn đang xem: Topbinhduong

Để phát âm sâu hơn các khái niệm được trình bày trong chương này, mời bạn tìm hiểu thêm loạt bài: Ví dụ về Applet trong Java.

Có một số trong những điểm khác nhau đặc trưng giữa một applet cùng một áp dụng Standalone Java, kia là:

Một applet là 1 trong lớp Java mà kế thừa lớp java.applet.Applet.

Một thủ tục main() ko được điện thoại tư vấn trên một applet, cùng một lớp applet sẽ không còn định nghĩa main().

Các applet được thiết kế với để được nhúng phía bên trong một trang HTML.

Khi một người tiêu dùng quan giáp một trang HTML mà cất một applet, thì code đến applet này được cài đặt tới thứ của tín đồ sử dụng.

Một JVM được yêu cầu để quan giáp một applet. JVM hoàn toàn có thể là hoặc một plugin của trình chú ý Web hoặc một môi trường thiên nhiên runtime riêng rẽ.

JVM bên trên thiết bị người dùng tạo một instance của lớp applet cùng gọi những phương thức không giống nhau trong trong cả vòng đời của applet.

Các applet có những qui tắc bảo mật thông tin nghiêm ngặt được thi hành vị trình chăm chút Web. Sự bảo mật thông tin của một applet thường xuyên được xem như thể Sandbox Security, so sánh applet như là một trong những đứa trẻ đã chởi vào một sandbox với những qui tắc nhiều chủng loại mà nó buộc phải tuân theo.

Các lớp khác, cơ mà applet cần, hoàn toàn có thể được tải trong một file đơn là Java Archive (JAR).

Vòng đời của một Applet trong Java

4 cách thức trong lớp Applet cung cấp cho bạn Framework, trên đó chúng ta xây dựng bất kỳ applet quan trọng đặc biệt nào:

init: cách thức này được dự tính cho khởi tạo bất cứ thứ gì cần thiết cho applet. Nó được gọi sau khi các thẻ param bên phía trong thẻ applet đã được xử lý.

start: cách làm này tự động hóa được gọi sau khoản thời gian trình duyệt gọi cách tiến hành init. Nó cũng được gọi bất cứ khi nào người dùng trả về trang mà chứa applet sau khi đã ra khỏi trang để tới trang khác.

stop: phương thức này tự động hóa được gọi khi người dùng rời khỏi trang mà trên đó gồm applet đó. Vì chưng thế, nó hoàn toàn có thể được điện thoại tư vấn một biện pháp lặp đi tái diễn với thuộc applet.

destroy: thủ tục này chỉ được hotline khi trình duyệt xong xuôi theo cách thông thường. Chính vì các applet là sống trên một trang HTML, phải khi người tiêu dùng rời khỏi trang mà chứa applet thì applet đang hủy.

paint: Được điện thoại tư vấn ngay lập tức sau khi phương thức start(), và cũng được gọi bất kỳ bao giờ applet nên repaint chính nó trong trình duyệt. Phương thức paint() đích thực được thừa kế từ java.awt.


Ví dụ "Hello, World" Applet trong Java

Sau đấy là một applet dễ dàng tên là HelloWorldApplet.java:

import java.applet.*;import java.awt.*;public class HelloWorldApplet extends Applet public void paint (Graphics g) g.drawString ("Hello World", 25, 50); Các lệnh import mang các lớp vào vào phạm vi của lớp applet của bọn chúng ta:

java.applet.Applet.

java.awt.Graphics.

Không có những lệnh import này, cỗ biên dịch vào Java vẫn không nhận ra các lớp Applet với Graphics, mà lại lớp applet tham chiếu tới.

Lớp Applet vào Java

Mỗi applet là một kế quá của lớp java.applet.Applet. Lớp Applet cơ bản cung cấp những phương thức mà lại một lớp Applet được nội suy có thể gọi nhằm thu được tin tức và thương mại & dịch vụ từ ngữ cảnh trình duyệt.

Nó bao hàm các cách làm mà triển khai các quá trình sau:

Nhận những tham số applet.

Nhận vị trí mạng của HTML file mà đựng applet đó.

Nhận địa điểm của folder lớp applet

In một thông báo trạng thái (status) trong trình duyệt.

Rút ra (Fetch) một hình ảnh

Rút ra (Fetch) một audio

Play một audio

Phục hồi size (resize) applet

Ngoài ra, lớp applet cung cấp một interface, bởi vì nó trình duyệt y thu nhận tin tức về applet và tinh chỉnh sự thực hiện của applet. Viewer tất cả thể:

Yêu ước một tế bào tả của những tham số mà applet thừa nhận

Khởi chế tác applet

Hủy applet

Bắt đầu sự xúc tiến của applet

Dừng sự thực thi của applet

Lớp Applet hỗ trợ các sự triển khai mặc định của mỗi thủ tục này. Phần nhiều sự xúc tiến này có thể được override nếu buộc phải thiết.


Gọi một applet trong Java

Một applet rất có thể được gọi bằng việc nhúng các chỉ thị trong một HTML file với quan cạnh bên file thông qua 1 applet viewer hoặc Java-enabled browser.

Thẻ là đại lý để nhúng một applet trong một HTML file. Dưới đó là ví dụ hotline một applet là "Hello, World":

Hello AppletNeu trinh duyet cua ban la Java-enabled, thi mot thong diep "Hello, World"se xuat hien o day.Ghi chú: bạn có thể tham khảo Thẻ Applet trong HTML để hiểu sâu hơn về phong thái gọi Applet từ HTML.

Thuộc tính code của thẻ là phải thiết. Nó xác định lớp Applet nhằm chạy. Nhì thuộc tính width và heigh cũng quan trọng để xác minh kích thước ban đầu của ô trong những số ấy applet chạy. Chỉ thị applet bắt buộc được đóng với một thẻ .

Nếu một applet nhận những tham số, những giá trị rất có thể được truyền cho các tham số bởi việc thêm những thẻ giữa thẻ với . Trình duyệt bỏ lỡ text và các thẻ khác giữa các thẻ applet.

Các trình chăm sóc non-java-enabled không giải pháp xử lý với . Vị thế, ngẫu nhiên cái gì xuất hiện thêm giữa các thẻ này, không tương quan tới applet, là chú ý thấy trong các trình thông qua đó.

Viewer với Browser tìm Java code được biên dịch tại địa chỉ của tài liệu. Còn nếu không thì, nhằm xác định, sử dụng thuộc tính codebase của thẻ như sau:

Nếu một applet cư trú trong một gói thay vì mặc định, gói đang giữ này buộc phải được xác định trong trực thuộc tính code bởi thực hiện ký tự dấu chấm (.) nhằm phân biệt các thành phần của package/class. Ví dụ:

Nhận những tham số của applet trong Java

Ví dụ sau minh họa phương pháp tạo một Applet Respond để tùy chỉnh thiết lập các thông số được xác minh trong tài liệu. Applet này hiển thị một checkerboard pattern (dạng bàn cờ) màu black và một màu vật dụng hai.

Màu vật dụng hai và kích thước của mỗi hình vuông hoàn toàn có thể được khẳng định như là những tham số tới applet bên trong tài liệu.

CheckerApplet nhận những tham số của nó trong phương thức init(). Nó cũng hoàn toàn có thể nhận những tham số này trong thủ tục paint(). Mặc dù nhiên, bài toán nhận các giá trị và cất giữ các cấu hình thiết lập một lần trên trạng thái start của applet, thay vày tại mỗi lúc refresh, là tiện nghi và công dụng hơn.

Applet Viewer hoặc Browser gọi cách thức init() của mỗi applet nó chạy. Viewer này hotline init() một lần, ngay sau khoản thời gian tải applet. (Applet.init() được thực hiện để không làm vật gì cả.) Override sự xúc tiến mặc định để chèn custom code khởi tạo.

Phương thức Applet.getParameter() hotline ra một tham số mà lại đã cung ứng tên (giá trị của một tham số luôn vẫn là một chuỗi). Nếu quý hiếm là số hoặc tài liệu khác chuỗi, thì String phải được parse.

Sau đó là một khung của CheckerApplet.java:

import java.applet.*;import java.awt.*;public class CheckerApplet extends Applet int squareSize = 50;// duoc khoi tao toi kích thước mac dinh public void init () private void parseSquareSize (String param) private color parseColor (String param) public void paint (Graphics g) Đây là cách tiến hành init() của CheckerApplet và cách tiến hành riêng parseSquareSize():

public void init () String squareSizeParam = getParameter ("squareSize"); parseSquareSize (squareSizeParam); String colorParam = getParameter ("color"); màu sắc fg = parseColor (colorParam); setBackground (Color.black); setForeground (fg);private void parseSquareSize (String param) if (param == null) return; try squareSize = Integer.parseInt (param); catch (Exception e) // Let default value remain Applet gọi cách tiến hành parseSquareSize() nhằm parse tham số squareSize. Phương thức đó lại gọi cách làm thư viện Integer.parseInt(), mà lại parse một string cùng trả về một integer. Cách làm Integer.parse() ném một exception bất cứ khi nào tham số của chính nó là hết hiệu lực hiện hành (không vừa lòng lệ).

Vì thế, cách thức parseSquareSize() bắt các exception, hơn là chất nhận được applet thất bại trên bad input.

Applet gọi cách tiến hành parseColor() để parse tham số màu sắc vào trong một giá trị Color. Cách làm này thực hiện một loạt so sánh về chuỗi để so khớp quý giá tham số với tên của một màu đang định trước. Các bạn cần xúc tiến những phương thức này để làm applet này làm cho việc.

Xác định các tham số của applet trong Java

Sau đó là ví dụ của một HTML file với một CheckerApplet được nhúng trong nó. HTML file này xác minh cả các tham số cho tới applet đó bởi thẻ .

Checkerboard AppletGhi chú: Tên những tham số là không phân biệt kiểu chữ.

Biến đổi áp dụng thành Applet trong Java

Nó là thuận tiện để biến đổi một áp dụng Graphic Java (đó là, một vận dụng mà thực hiện AWT và chúng ta cũng có thể bắt đầu cùng với Java program launcher) thành một applet mà chúng ta cũng có thể nhúng vào vào trang Web.

Here are the specific steps for converting an application khổng lồ an applet.

Tạo một trang HTML cùng với thẻ tương thích để thiết lập applet code.

Cung cung cấp một lớp phụ của lớp JApplet, và làm lớp này là public. Còn nếu không thì, applet này không thể được tải.

Loại vứt phương thức main vào ứng dụng. Không thành lập một frame window mang đến ứng dụng. Ứng dụng của bạn sẽ được hiển thị bên trong trình duyệt.

Di chuyển ngẫu nhiên code khởi sinh sản nào tự Frame window constructor tới cách thức init của applet. Các bạn không phải xây dụng rõ ràng đối tượng applet. Trình ưng chuẩn khởi tạo nó cho bạn và gọi thủ tục init.

Gỡ vứt triệu hồi cho tới setSize; với các applet, bài toán tạo kích thước được tiến hành bởi các tham số width với height trong HTML file.

Gỡ bỏ triệu hồi cho tới setDefaultCloseOperation. Một applet quan yếu bị đóng; nó dứt khi trình thông qua thoát ra.

Nếu vận dụng gọi setTitle, thì đào thải triệu hồi tới cách thức này. Applet tất yêu có những Title bar. (Tất nhiên bạn cũng có thể tạo tiêu đề cho chính trang web đó, bởi thực hiện thẻ HTML title.)

Đừng gọi cách tiến hành setVisible(true). Applet được hiển thị một phương pháp tự động.

Xử lý sự khiếu nại trong Java

Applet kế thừa một đội các cách thức event-handling tự lớp Container. Lớp Container định nghĩa một trong những phương thức, như processKeyEvent với processMouseEvent, nhằm xử lý các kiểu sự kiện vắt thể, và sau đó một cách thức catch-all được hotline processEvent.

Để bội nghịch ứng lại một sự kiện, một applet cần override phương thức event cụ thể.

import java.awt.event.MouseListener;import java.awt.event.MouseEvent;import java.applet.Applet;import java.awt.Graphics;public class ExampleEventHandling extends Applet implements MouseListener StringBuffer strBuffer; public void init() addMouseListener(this);strBuffer = new StringBuffer(); addItem("initializing the hãng apple "); public void start() addItem("starting the applet "); public void stop() addItem("stopping the applet "); public void destroy() addItem("unloading the applet"); void addItem(String word) System.out.println(word); strBuffer.append(word); repaint(); public void paint(Graphics g) //Ve mot Rectangle xung quanh khu vuc hien thi applet. G.drawRect(0, 0, getWidth() - 1, getHeight() - 1);//Hien thi string ben vào rectangle. G.drawString(strBuffer.toString(), 10, 20); public void mouseEntered(MouseEvent event) public void mouseExited(MouseEvent event) public void mousePressed(MouseEvent event) public void mouseReleased(MouseEvent event) public void mouseClicked(MouseEvent event) addItem("mouse clicked! "); Bây giờ, họ gọi applet này như sau:

Event HandlingBan đầu, applet đang hiển thị "initializing the applet. Starting the applet." Sau đó, khi bạn click vào bên phía trong hình chữ nhật, thì "mouse clicked" cũng trở thành được hiển thị.

Hiển thị hình hình ảnh trong Java

Một applet rất có thể hiển thị hình hình ảnh trong định dạng GIF, JPEG, BMP, etc. Để hiển thị một hình ảnh bên trong một applet, bạn sử dụng phương thức drawImage() tronglớp java.awt.Graphics.

Ví dụ sau minh họa vớ cả các bước để hiển thị hình hình ảnh trong Java:

import java.applet.*;import java.awt.*;import java.net.*;public class ImageDemo extends Applet private Image image; private AppletContext context; public void init() context = this.getAppletContext(); String imageURL = this.getParameter("image"); if(imageURL == null) imageURL = "java.jpg"; try URL url = new URL(this.getDocumentBase(), imageURL); image = context.getImage(url); catch(MalformedURLException e) e.printStackTrace(); // Hien thi trong status bar cua trinh duyet context.showStatus("Could not load image!"); public void paint(Graphics g) context.showStatus("Displaying image"); g.drawImage(image, 0, 0, 200, 84, null); g.drawString("www.javalicense.com", 35, 100); Bây giờ, bọn họ gọi applet này như sau:

The ImageDemo applet

Play một Audio vào Java

Một applet có thể play một audio file được màn trình diễn bởi AudioClip interface trong gói java.applet. AudioClip interface tất cả 3 phương thức, gồm:

public void play(): Play một audio đoạn clip một lần từ khi bắt đầu.

public void loop(): làm cho audio video clip được trả lời một bí quyết liên tục.

public void stop(): ngừng play một audio clip.

Để thừa nhận một đối tượng người tiêu dùng AudioClip, bạn phải triệu hồi cách làm getAudioClip() của lớp Applet. Cách thức getAudioClip() trả về ngay lập tức lập tức, có hay không URLlà đưa tới một audio file thực sự. Audio file này không được download tới lúc một sự nỗ lực được tạo ra để play một audio video clip đó.

Following is the example showing all the steps lớn play an audio:

import java.applet.*;import java.awt.*;import java.net.*;public class AudioDemo extends Applet private AudioClip clip; private AppletContext context; public void init() context = this.getAppletContext(); String audioURL = this.getParameter("audio"); if(audioURL == null) audioURL = "default.au"; try URL url = new URL(this.getDocumentBase(), audioURL); đoạn phim = context.getAudioClip(url); catch(MalformedURLException e) e.printStackTrace(); context.showStatus("Could not load audio file!"); public void start() if(clip != null) clip.loop(); public void stop() if(clip != null) clip.stop(); Bây giờ, bọn họ gọi táo khuyết này như sau:

The ImageDemo appletBạn rất có thể sử dụng test.wav tại PC của công ty để test ví dụ trên.

Xem thêm: Tuổi 12 Trái Tim Bé Nhỏ Loạn Nhịp Phần 1, Tổng Hợp Truyện Tuổi 12 Trái Tim Bé Nhỏ Loạn Nhịp

Để phát âm sâu hơn các khái niệm được trình diễn trong chương này, mời bạn tìm hiểu thêm loạt bài: Ví dụ về Applet trong Java.