我目前正在学习RMI。
我不太理解代码库的概念。我读的每一篇文章都建议,调用远程对象的客户端可以从代码库加载方法定义。 现在的问题是:我是否无论如何需要在我的类路径中有描述/接口?如果我只在运行时了解它们,如何调用远程对象上的方法?这甚至不会编译。
我是不是完全错过了重点?那么代码库的重点到底是什么?它似乎需要很多额外的工作和要求来提供一个代码库。
谢谢
public interface MiddleEarth {
public List<Creature> getAllCreatures();
}
MiddleEarth
和 Creature
的接口,但没有类路径中的实现。
Creature
的实现是可序列化的对象类型,包括 Elf
、Man
、Dwarf
和 Hobbit
等。这些实现位于您的代码库中,但不在客户端的类路径中。Creature
的对象,也就是上述任意一个类。Creature
(例如一个 Ent
),它也会在代码库中查找。creaturesImpl.jar
,而无需更新服务器或客户端应用程序本身。