Java 尝试从paint()以外的方法打印文本

Java 尝试从paint()以外的方法打印文本,java,graphics,applet,Java,Graphics,Applet,我创建了一个小程序,在其中我定义了一个方法,除了覆盖使用Graphics.drawString()方法在画布上显示文本的paint()方法之外。我遇到的问题是,我无法调用该方法。这是因为该方法将图形类对象作为参数,并且在调用该函数时无法将图形类对象作为参数传递。(callerMethod()在特定情况下被调用。)请参阅下面的代码和帮助。谢谢 import java.applet.*; import java.awt.*; public class MyApplet extends Applet

我创建了一个小程序,在其中我定义了一个方法,除了覆盖使用Graphics.drawString()方法在画布上显示文本的paint()方法之外。我遇到的问题是,我无法调用该方法。这是因为该方法将图形类对象作为参数,并且在调用该函数时无法将图形类对象作为参数传递。(callerMethod()在特定情况下被调用。)请参阅下面的代码和帮助。谢谢

import java.applet.*;
import java.awt.*;
public class MyApplet extends Applet {

    @Override
    public void init() {}

    public void callerMethod() {

        /*HERE I WANT TO CALL myPrintMethod()*/
        myPrintMethod(GRAPHICS OBJECT);
    }

    public static void myPrintMethod(Graphics g) {
        g.drawString("In method myPrintMethod",20,40);
    }

    @Override
    public void paint(Graphics g) {
        g.drawString("In method paint",20,20);
    }
}
但是这个
myPrintMethod()
应该在
paint(.)之后调用

使用提供更高级功能的
图形2D

 Graphics2D g2d = (Grapics2D) g;
调用myPrintMethod()时应将图形对象作为实际参数传递。调用myPrintMethod时,可以将paint方法的图形对象g传递给myPrintMethod

public static void myPrintMethod(Graphics g){
    g.drawString("myPrintMethod",20,40); 
}
public void paint(Graphics g){
    g.drawString("Paint method",20,20);
    myPrintMethod(g);
}    
这将提供以下输出:

Paint method

myPrintMethod

对不起,这不起作用。我确信调用callerMethod()本身没有缺陷。我不明白为什么我没有看到输出。
Paint method

myPrintMethod