LocalInnerClass.java
package simple.sample;
public class LocalInnerClass {
public static void main(String[] args) {
LocalInnerClass top=new LocalInnerClass();
top.useAnonymousClass();
top.useLocalClass();
}
public void useAnonymousClass() {
Runnable runner=new Runnable() {
@Override
public void run() {
System.out.println("run inside an anonymous inner class");
}
};
Thread worker=new Thread(runner);
worker.start();
}
public void useLocalClass() {
class MyRunner implements Runnable {
@Override
public void run() {
System.out.println("run inside a local inner class");
}
};
Thread worker=new Thread(new MyRunner());
worker.start();
}
}