Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 向接口添加现有方法_Java_Android - Fatal编程技术网

Java 向接口添加现有方法

Java 向接口添加现有方法,java,android,Java,Android,我再一次被Kilibolt教程困住了,但现在又是另一个例子。 我需要画多边形,但android中没有这种方法。所以我用谷歌搜索了一下,找到了我需要的东西。要绘制多边形,我需要方法drawPathPath,Paint。我在任何需要的地方导入android.graphics.Canvas,然后将此方法添加到Kilobolt教程中的界面GraphicsA中。在那个AndroidGraphics类说有未实现的方法要添加之后,我添加了它。我明白了 @Override public void dra

我再一次被Kilibolt教程困住了,但现在又是另一个例子。 我需要画多边形,但android中没有这种方法。所以我用谷歌搜索了一下,找到了我需要的东西。要绘制多边形,我需要方法drawPathPath,Paint。我在任何需要的地方导入android.graphics.Canvas,然后将此方法添加到Kilobolt教程中的界面GraphicsA中。在那个AndroidGraphics类说有未实现的方法要添加之后,我添加了它。我明白了

@Override
    public void drawPath(Path path, Paint paint) {
        // TODO Auto-generated method stub

    }
这是否意味着,这种必要的方法是有效的?

一点也不

这只是意味着你必须实施它

IDE将自动为您生成一个方法,该方法至少可以使代码编译

由于您的方法返回void,那么,自动生成的方法存根将不起任何作用

如果它返回了一个int,那么生成的存根可能会返回0。如果有任何对象或子类,则为null;等等

这只是提醒您必须提供一个实现

这只是一个评论;如果您希望编辑IDE首选项并将其替换为:

// TODO need an implementation here
或者别的什么


编辑:事实上这是IDE中的一个bug;它不是从接口实现的方法,而是从超类重写的方法;但是模板引擎没有生成对super…

的调用,但是Canvas-,android.graphics.Paint中有这样一个方法,我真的不知道这里发生了什么,我找不到这个方法的源代码这似乎是您使用的IDE中的一个bug;如果选择重写该方法,它至少应该生成对超级方法的调用,但它没有。您至少应该调用super.drawPathpath,paint;。类型对象的drawPathPath、Paint方法未定义。当我在方法中添加这个时,它就是这么说的