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