public class go { 
example
public static void main(String[] args) { person p = new person(); p.talk();
empty
p.become(actor.Student); p.talk();
OOP
p.become(actor.Employer); p.talk();
money
p.become(new adult()); p.talk();
interesting
p.become(actor.Student); p.talk();
OOP
p.become(p); p.talk();
old role: employer
p.become(actor.Person); p.talk(); // initial state } };

slide: go.java