Local(지역) 클래스 & Anonymous(익명) 클래스

- Local 클래스

interface Readable
{
public void read();
}
class OuterClass
{
public Readable createLocalClassInst()
{
class LocalClass implements Readable
{
public void read()
{
System.out.println("Outer inst name : " + myName);
}
}
return new LocalClass();
}
}

- Anonymous 클래스
interface Readable
{
public void read();
}
class OuterClass
{
public Readable createLocalClassInst()
{
return new Readable()
{
public void read()
{
System.out.println("Outer inst name : " + myName);
}
}
}
}

익명 클래스는 항상 return문과 함께 등장해야 하는 것은 아니다.
Readable read = new Readable()
{
publiv void read()
{
...
}
};