📜  Java小程序的生命周期

📅  最后修改于: 2022-05-13 01:54:23.103000             🧑  作者: Mango

Java小程序的生命周期

小程序是可以嵌入到网页中的Java程序。它在 Web 浏览器中运行并在客户端运行。小程序使用 APPLET 或 OBJECT 标记嵌入到 HTML 页面中,并托管在 Web 服务器上。小程序的整个生命周期由小程序容器管理。所有小程序都是Java.applet.Applet 类的子类(直接或间接)。小程序不是独立的程序。它们在网络浏览器或小程序查看器中运行。

  • 小程序生成动态内容
  • 小程序在客户端工作
  • 响应时间快

我们可以借助名为Applet Viewer的标准小程序查看器工具查看我们的小程序。与Java程序的一般执行和输出不同,applet 的执行不是从 main() 方法开始的,而且 System.out.println() 不满足 applet 窗口的输出。相反,它是通过各种抽象窗口工具包 (AWT) 方法处理的,例如 drawString()。

在进入Java小程序生命周期的各个阶段之前,让我们看看 Applet 的层次结构,如下媒体所示:

Java Applet 生命周期中的阶段

  • 初始化小程序
  • 启动小程序
  • 绘制小程序
  • 停止小程序
  • 销毁小程序

小程序的生命周期

第 1 步:初始化

java.awt.applet.*;

第 2 步:开始

public void init() 

第3步:油漆

public void start()

第 4 步:停止

public void paint (Graphics g)

第 5 步:销毁

public void stop()

执行:

Java Applet的实现可以通过以下两种方式完成:

  1. 使用 HTML 文件
  2. 小程序查看器工具

方式一:使用 HTML 文件

HTML
public void destroy()


Java


code,width,height



Java
Class AppletLifeCycle extends Applet
{
    public void init()
    {
        // Initializes objects
    }
    public void start()
    {
        // Starts the applet code
    }
    public void paint(Graphics graphics)
    {
        // Any shape's code
    }
    public void stop()
    {
        // Stops the applet code
    }
    public void destroy()
    {
        // Destroys the applet code
    }
}


HTML
// Java Program to Make An Applet
 
// Importing required classes from packages
import java.awt.*;
import java.awt.applet.*;
 
// Class 1
// Helper class extending Applet class
public class AppletDemo extends Applet
 
// Note: Every class used here is a derived class of applet,
// Hence we use extends keyword Every applet is public
{
    public void init()
    {
        setBackground(Color.black);
        setForeground(Color.yellow);
    }
    public void paint(Graphics g)
    {
        g.drawString("Welcome", 100, 100);
    }
}
 
// Save file as AppletDemo.java in local machine


Java

  
    
  


方式二:小程序查看器工具

小程序生命周期的方法:

Applet生命周期有五种方法,即;

  1. 在里面()
  2. 开始()
  3. 画()
  4. 停止()
  5. 破坏()

所有这些都在 AWT 包Java.awt.applet.*中可用,为了导入油漆(图形 g),我们确实使用Java.awt.component

让我们详细了解每种方法:

方法一: init()  

  • 这是第一个被调用的方法
  • 变量可以在这里初始化
  • 此方法在小程序运行期间只能调用一次
  • 在初始化时调用

句法:

// Java Program to Illustrate Insertion of HTML File in
// Applet As Commands
 
// Importing required classes
import java.applet.*;
import java.awt.*;
 
// Note: Insertion of HTM:L file as comments
 
/* 
*/
 
// Java Program
 
// Class extending Applet
public class AppletDemo extends Applet {
    public void init()
    {
        setBackground(Color.black);
        setForeground(Color.yellow);
    }
    public void paint(Graphics g)
    {
        g.drawString("Welcome to Applets", 50, 50);
    }
}

方法二: start()

  • 此方法在 init() 方法之后调用
  • start() 方法用于启动小程序
  • 它也被称为在一个小程序停止后重新启动它。即恢复小程序

句法:

public void init()
 {
 // To initialize objects
 } 

方法三:paint()

public void start()
 {
 // To start the applet code
 }
  • paint() 方法用于绘制任何形状,如正方形、矩形、梯形等。
  • paint() 方法有一个Graphics Class 类型的参数,这个Graphics 类启用了applet 中的绘画功能。
  • 此参数将包含图形上下文,当需要小程序的输出时使用该上下文。

句法:

void paint(Graphics g){ }

方法四: stop()

  • 每次浏览器停止、最小化或应用程序发生突然故障时都会调用它。
  • 调用 stop() 方法后,我们也可以随时使用 start() 方法。
  • 此方法主要处理清理代码。
  • 当 Web 浏览器离开包含小程序的 HTML 文档转到另一个页面时,将调用 stop() 方法,例如,当调用 stop() 时,小程序可能正在运行。当applet 不可见时,您应该使用stop() 来挂起不需要运行的线程。如果用户返回页面,您可以在调用 start( ) 时重新启动它们。

句法:

public void paint(Graphics graphics)
 {
 // Any shape's code
 }

方法五: destroy()

  • destroy() 方法用于在我们完成小程序工作后销毁应用程序。它只能被调用一次。
  • 一旦小程序被销毁,我们就不能启动()小程序(我们不能再次恢复小程序)
  • 当环境确定您的小程序需要从内存中完全删除时,会调用 destroy() 方法。

句法:

public void stop()
 {
 // To stop the applet code
 }

语法:整个 Applet 生命周期

Java

public void destroy()
 {
 // To destroy the applet
 }


执行:

示例 1 :为了从Java Applet 开始,让我们了解一个简单的代码来制作Applet

Java

Class AppletLifeCycle extends Applet
{
    public void init()
    {
        // Initializes objects
    }
    public void start()
    {
        // Starts the applet code
    }
    public void paint(Graphics graphics)
    {
        // Any shape's code
    }
    public void stop()
    {
        // Stops the applet code
    }
    public void destroy()
    {
        // Destroys the applet code
    }
}

HTML

// Java Program to Make An Applet
 
// Importing required classes from packages
import java.awt.*;
import java.awt.applet.*;
 
// Class 1
// Helper class extending Applet class
public class AppletDemo extends Applet
 
// Note: Every class used here is a derived class of applet,
// Hence we use extends keyword Every applet is public
{
    public void init()
    {
        setBackground(Color.black);
        setForeground(Color.yellow);
    }
    public void paint(Graphics g)
    {
        g.drawString("Welcome", 100, 100);
    }
}
 
// Save file as AppletDemo.java in local machine

编译方法:

现在为了生成输出,请按照下面的签名来编译和运行上面的文件:

方法一:使用命令

方法二:在我们的Java程序中包含applet代码。

方法如下:

方法一:使用命令

汇编:

执行:


  
    
  

方法 2:在我们的Java程序中包含 applet 代码 确保将此 html applet 代码作为注释,因为它很重要,如下所示:

例子

Java

Double click on Applet.html 
This won't work on browser as we don't have the proper plugins.


汇编:

// Java Program to Illustrate Insertion of HTML File in
// Applet As Commands
 
// Importing required classes
import java.applet.*;
import java.awt.*;
 
// Note: Insertion of HTM:L file as comments
 
/* 
*/
 
// Java Program
 
// Class extending Applet
public class AppletDemo extends Applet {
    public void init()
    {
        setBackground(Color.black);
        setForeground(Color.yellow);
    }
    public void paint(Graphics g)
    {
        g.drawString("Welcome to Applets", 50, 50);
    }
}

执行:

c:\> javac AppletDemo.java

所以这就是关于Java Applet 的生命周期和用于运行 applet 的方法的全部内容!希望这可以帮助。