考虑一下这种方式:如果
Cat在常规类的哪里,当您想在其上调用某些方法时,您 究竟 在乎什么呢?
您会关心方法定义:它们的名称,它们的参数类型,它们的返回值。你 并不 需要关心实际的实现!
由于接口提供了所有这些功能,因此您可以像在常规类上一样在其上调用方法。
当然,为了使该方法实际返回某个对象,需要在 某个地方 有一些实现该接口的类。但是,实际上是什么类或 如何 实现这些方法与返回该对象的代码无关紧要。
换句话说,您可以编写如下代码:
Cat cat = nextCat(GameState.STUFF);cat.makeCat(GameState.OTHER_STUFF);
该代码不知道实现该
Cat接口的具体类型,但知道该对象可以执行
Cat接口所需的所有 *** 作。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)