我们正在学习Java类中的这两件事。我相信我理解两者的基本方面,但不确定Casting如何最终限制算法重用。我们的老师说我们需要知道下周的测试。谁能解释一下呢?
答案 0 :(得分:1)
如果你强制转换,则限制你的算法仅适用于一个班级(或它的孩子)。如果您使用接口,则可以接受更多种类的对象,这些对象本身实现了该接口。更加灵活。
以下是相关的SO问题:Explaining Interfaces to Students
答案 1 :(得分:0)
在代码中使用强制转换时,必须知道要转换为的确切类型(在代码写入阶段)。因此,您的代码将来不能在不同类型中重用。始终记得编程到界面而不是特定类型。