Cómo imprimir la entrada del usuario en la pantalla desde un TextField usando Java Swing

Soy nuevo con GUI en Java. Sin embargo, probé el programa de abajo pero no funcionará. Es una aplicación independiente. Busqué en la web pero no pude encontrar una respuesta relevante. Por favor ayuda.

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class usernamepass extends JFrame implements ActionListener{
    JTextField a;

    public usernamepass(){
       JFrame jp=new JFrame();
       add(jp);
       a=new JTextField(12);
       jp.add(a);
       a.addActionListener(this);
    }

    public void actionPerformed(ActionEvent ae){
        this.repaint();
    }

     public static void main(String [] args){
         usernamepass obj=new usernamepass();
         obj.setSize(300,300);
         obj.setVisible(true);
         obj.setResizable(true);
         obj.setTitle("HI") ;
     }

     public void paint(Graphics g){
         g.drawString("Name "+a.getText(),10,70);
     }
}

EDITAR: Lo siento, he estropeado el código (sistema se estrelló). Bueno, el código se está ejecutando con los cambios, sin embargo, veo que los mensajes impresos simplemente sobrescriben el anterior y no se repintan.

Respuestas a la pregunta(1)

Su respuesta a la pregunta