<p>So far I've been using <code>public void run() {}</code> methods to execute my code in Java. When/why might one want to use <code>main()</code> or <code>init()</code> instead of <code>run()</code>?</p>

The
```
main()
```
method is the entry point for a Java application.
```
run()
```
is typically used for new threads or tasks.
Where have you been writing a
```
run()
```
method, what kind of application are you writing (e.g. Swing, AWT, console etc) and what's your development environment?