class C { main() { (new T(...)).start(); (new Thread() { public void run() { ... } }).start(); (new Runnable() { public void run() { ... } }).start(); Thread t = new Thread() { public void run() { ... } }; System.out.println(t); } } class T extends Thread { public void run() { ... } } class Wnd extends JFrame { public Wnd() { JButton jb = new JButton(); jb.addActionListener(new ActionListener() { public void actionPerformed(..) { ..... } }); } }