创建一个代理类,既能使我们避免显式地处理内存分配,又能保持类在运行时绑定的属性(定义一个行为和类本身相似又潜在地表示了所有继承自类的对象的代理类)
每个代理都代表某个继承自类的对象。只要该代理关联着这个对象,该对象就肯定存在。复制代理就会复制相对应的对象,而给代理赋新值也会先删除旧对象,再复制新对象