看了一个J2me程序的代码,有一段没看懂,希望高手指点

先看代码:publicclassPuzzleMainCanvasextendsCanvasimplementsPuzzleCanvasUpdate{//省略无关语句pub... 先看代码:
public class PuzzleMainCanvas extends Canvas implements PuzzleCanvasUpdate {
//省略无关语句
public void update() { repaint(); }
}

public class PuzzleDocument {
private PuzzleCanvasUpdate canvas;
public PuzzleDocument(PuzzleMainCanvas canvas, Image[] images, int hiddenX, int hiddenY) {
//省略无关语句
this.canvas = canvas;
}
public void setImageState() {
state = IMAGE_STATE;
canvas.update(); //问题就在这,这里的update有啥作用,
//这个canvas就是在这个类中定义的PCU的对象吧
}
} //这个类中定义了PCU的对象?接口也可以定义对象吗?

public interface PuzzleCanvasUpdate {
public void update();
} //这个就是自定义的接口?有啥作用?没看懂

首先看这个PuzzleMainCanvas类,引用了PuzzleCanvasUpdate(以下简称PCU),但是PCU是自定义的好像是接口吧,里面就有一个函数update,在PMC类中好像也没调用到这个函数,而且PMC中又写了一段update()函数,自己学的浅,不知道说的对不对。
展开
 我来答
chenyu398
2011-10-23 · TA获得超过532个赞
知道小有建树答主
回答量:168
采纳率:0%
帮助的人:161万
展开全部
canvas是PCU的对象,调用了updata()方法,而PMC实现了PCU接口,所以实际上是调用了PMC的updata()方法, PCU是一个接口,里面没有updata()具体的实现,它把具体的实现放在了PMC中。
追问
也就是说在PMC中重写了update(),让它有了repaint()的作用?
AiPPT
2024-09-19 广告
随着AI技术的飞速发展,如今市面上涌现了许多实用易操作的AI生成工具1、简介:AiPPT: 这款AI工具智能理解用户输入的主题,提供“AI智能生成”和“导入本地大纲”的选项,生成的PPT内容丰富多样,可自由编辑和添加元素,图表类型包括柱状图... 点击进入详情页
本回答由AiPPT提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式