Java - 小程序基础

你好,有抱负的Java开发者们!我很高兴与你们一起开始这段激动人心的Java小程序之旅。作为一个教授编程超过十年的人,我可以向你保证,尽管前面的道路可能看起来令人生畏,但它同样非常有益。那么,让我们卷起袖子,一头扎进去吧!

Java - Applet Basics

什么是Java小程序?

在我们开始编码之前,让我们先了解一下小程序究竟是什么。可以把小程序想象成一个可以嵌入网页的小型Java程序。它就像一个迷你应用程序,在你的浏览器内运行,为原本静态的HTML页面带来交互性和动态内容。

Java小程序的生命周期

每个小程序在其生命周期中都会经历一系列阶段。理解这个生命周期对于开发有效的小程序至关重要。让我们来分解一下:

  1. 初始化
  2. 启动
  3. 运行
  4. 停止
  5. 销毁

Java小程序生命周期的流程

为了更好地可视化这个流程,让我们来看看一个概述每个阶段调用方法的表格:

阶段 调用的方法
初始化 init()
启动 start()
运行 paint()
停止 stop()
销毁 destroy()

现在,让我们用一些代码示例来更深入地了解这些阶段。

一个简单的Java小程序 "Hello, World"

让我们从经典的"Hello, World"示例开始。这将帮助我们理解小程序的基本结构。

import java.applet.Applet;
import java.awt.Graphics;

public class HelloWorldApplet extends Applet {
public void paint(Graphics g) {
g.drawString("Hello, World!", 50, 25);
}
}

让我们分解一下:

  1. 我们从java.appletjava.awt包中导入必要的类。
  2. 我们的类HelloWorldApplet扩展了Applet类。
  3. 我们覆盖了paint方法来绘制我们的"Hello, World!"消息。

小程序类

Applet类是所有小程序的父类。它为小程序的执行提供了一个框架,包括初始化、启动、停止和销毁小程序的方法。让我们看一个更全面的例子:

import java.applet.Applet;
import java.awt.Graphics;

public class LifeCycleApplet extends Applet {
String message = "";

public void init() {
message += "初始化... ";
}

public void start() {
message += "启动... ";
}

public void stop() {
message += "停止... ";
}

public void destroy() {
message += "销毁... ";
}

public void paint(Graphics g) {
g.drawString(message, 20, 20);
}
}

这个小程序演示了所有的生命周期方法。每个方法都会向message字符串中添加内容,然后在paint方法中显示。

调用小程序

要运行小程序,我们需要将其嵌入HTML页面中。下面是如何操作的示例:

<html>
<body>
<applet code="LifeCycleApplet.class" width="300" height="100">
您的浏览器不支持<code>applet</code>标签。
</applet>
</body>
</html>

获取小程序参数

小程序可以从HTML页面接收参数。这为小程序的行为提供了更大的灵活性。让我们看看如何操作:

import java.applet.Applet;
import java.awt.Graphics;

public class ParameterApplet extends Applet {
public void paint(Graphics g) {
String name = getParameter("name");
g.drawString("Hello, " + name + "!", 50, 25);
}
}

在HTML中:

<applet code="ParameterApplet.class" width="300" height="100">
<param name="name" value="Alice">
</applet>

事件处理

小程序可以响应用户交互。让我们创建一个简单的按钮点击小程序:

import java.applet.Applet;
import java.awt.Button;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class ButtonApplet extends Applet implements ActionListener {
Button b;
String message = "";

public void init() {
b = new Button("点击我!");
add(b);
b.addActionListener(this);
}

public void actionPerformed(ActionEvent e) {
message = "按钮点击了!";
repaint();
}

public void paint(Graphics g) {
g.drawString(message, 50, 50);
}
}

这个小程序创建了一个按钮,并在点击按钮时更新消息。

显示图像

小程序也可以显示图像。这里有一个简单的例子:

import java.applet.Applet;
import java.awt.Graphics;
import java.awt.Image;

public class ImageApplet extends Applet {
Image img;

public void init() {
img = getImage(getDocumentBase(), "myimage.jpg");
}

public void paint(Graphics g) {
g.drawImage(img, 0, 0, this);
}
}

这个小程序从与HTML文件相同目录下的位置加载图像并显示它。

播放音频

最后,让我们看看小程序是如何播放音频的:

import java.applet.Applet;
import java.applet.AudioClip;

public class AudioApplet extends Applet {
AudioClip clip;

public void init() {
clip = getAudioClip(getCodeBase(), "mysound.au");
}

public void start() {
clip.play();
}

public void stop() {
clip.stop();
}
}

这个小程序加载一个音频文件,并在小程序启动时播放它,当小程序停止时停止播放。

就这样,朋友们!我们已经涵盖了Java小程序的基础,从生命周期到事件处理,显示图像和播放音频。记住,熟能生巧,所以不要害怕用这些例子进行实验并创建你自己的小程序。快乐编码!

Credits: Image by storyset