0

首先,我不确定我的问题是否表述得很好,所以如果有人可以帮我表述它以便将来其他人可以找到它,欢迎发表评论。

我有以下代码:

@Override
public void update(float deltaTime){
    //getGraphics returns a Graphics object
    //it inherits from ? can access the AndroidGraphics class because of ?
    Graphics g = game.getGraphics();
    Assets.splash = g.newImage("splash.jpg", ImageFormat.RGB565);

    game.setScreen(new LoadingScreen(game));
}

一切正常(不是我写的),但从来没有导入包含附加到图形类型的方法的 AndroidGraphics ......一切都导入了在 AndroidGraphics 中实现的接口(即图形)。该链接是如何建立的,为什么可行以及该行为如何命名?

提前致谢。

4

2 回答 2

0

抽象。

您可以使用实现 Graphics 接口的对象的概念,而无需知道或不需要知道该实现是 android 特定的 - 它是 AndroidGraphics 的一个实例。

AndroidGraphics 类通过实现 Graphics 接口,有效地表示“无论该接口隐含什么合同,我都会履行”,因此需要 Graphics 提供的功能的客户不需要知道履行合同的类的类型,只需知道他们是这样。

于 2013-03-24T23:22:10.000 回答
0

它被称为使用包成员。您不需要导入它,因为文件开头的包参数隐式导入了它,而无需您使用“import”。

于 2013-03-24T23:23:46.303 回答