Como passar mais de um parâmetro em um método paint()?

Olá pessoal.
Estava desenvolvendo um projeto onde preciso sobrescrever o método paint(), porém o método paint() só recebe como parâmetro um objeto Graphics.
O que eu preciso fazer é criar um método paint que receba dois parâmetros e utilize objetos do tipo Image pertencentes ao objeto Outro para desenhar na tela, por exemplo

import java.awt.Graphics;
import java.awt.Graphics2D;
import javax.swing.JPanel;
public class Desenho extends JPanel{
    public void paint(Graphics g, Outro o){
        Graphics2D g2d = (Graphics2D)g;
        g2d.drawImage(o.getImagem(), o.getX(), o.getY(), null);
        }
}

após isso eu precisaria chamar esse método e passar os parâmetros.

Outro o2 = new Outro();
Graphics gh = new Graphics();     // Não posso criar um Graphics assim pois Graphics é classe abstrata.
paint(gh, o2);

O problema é que não posso criar um objeto Graphics fora do método e assim não consigo criar o método com mais de um argumento.

Se alguém souber como fazer isso ou tenha uma ideia diferente que chegue ao mesmo resultado e possa me ajudar, desde já agradeço.

Crias o teu objecto na classe:

import java.awt.Graphics;
import java.awt.Graphics2D;
import javax.swing.JPanel;
public class Desenho extends JPanel{
    private Outro o;

    public void paint(Graphics g){
        Graphics2D g2d = (Graphics2D)g;
        g2d.drawImage(o.getImagem(), o.getX(), o.getY(), null);
    }
    public void oMeuPaint(Graphics g, Outro o){
         this.o = o;
         paint(g);
    }
}