以前都没怎么考虑到这个问题,但是现在却遇到了。
我为工厂内部定义了一个内部类称作EMProject,工厂只为外部创建接口IEmproject,不允许用户从外部调用某些方法来修改Project。而我必须要保存这个Project,项目中使用了AMF编码协议,我将整个Project 利用writeObject方法写入文件中,如下:
[RemoteObject(alia="EMProject")] class EMProject implements IEMProject{ }
而编译器也报错了,称EMProject未在包中定义。我也尝试RegisterAlisa这个方法,同样在运行时报错了,是cast错误。
所以RemoteObject是与包内类冲突的。