函数返回接口意味着什么?

2024-01-30

我刚刚看到这样的成员函数:

public Cat nextCat(GameState state); 

但 Cat 的接口是这样的:

public interface Cat {
        void makeCat(GameState state);
}

所以我很困惑如何解释这一点。我知道当某个东西返回一个对象或原语时意味着什么。但是返回接口是什么意思呢?如何使用这个函数的返回值?


想一想:如果Cat哪里有正规班,什么exactly当你想调用它的一些方法时你会关心吗?

您会关心方法定义:它们的名称、它们的参数类型、它们的返回值。你don't需要关心实际执行情况!

由于接口提供了所有这些,因此您可以调用它的方法,就像调用常规类一样。

当然,为了让该方法实际返回某个对象,需要有某个类实现该接口某处。但实际上是什么类别或how它实现这些方法对于获取该对象返回的代码来说并不重要。

换句话说,您可以编写如下代码:

Cat cat = nextCat(GameState.STUFF);
cat.makeCat(GameState.OTHER_STUFF);

该代码不知道实现的具体类型Cat接口,但它知道该对象可以执行该对象可以执行的所有操作Cat接口需要。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

函数返回接口意味着什么? 的相关文章

随机推荐