java-扩展Graphics2D类而不实现所有方法
作者:互联网
我有一个名为MyClass的类,并且我希望该类扩展Graphics2D(在java.awt中).但是,当我键入公共类MyClass扩展Graphics2D {….}时,我必须添加未实现的方法draw,drawImage,addRenderingHints等,因为Eclipse会显示此错误并且无法编译.
这就是我想到的问题:我只想使用draw,setBackground和Graphics2D的其他几种方法,我不希望其余的代码与其他未实现的方法(强制性的)一起使用.
有办法避免这种情况吗?因为我在编写代码时非常简洁明了,而且我不希望再使用100行甚至不使用的代码.
您有什么建议?
解决方法:
您可以使用它来扩展Graphics,并且每当需要Graphics2D时,只需进行转换即可.
图形g = this.create();
Graphics2D g2d =(Graphics2D)g;
但是,您需要在其中创建一个Graphics变量,因为您不能强制转换.
因此,对于“ setBackground”:
public void setBackground(Image img) {
g2d.setBackground(img);
}
确实,尽管如此,无论您做什么,都会变得凌乱.我什至不确定您是否可以执行this.create()事情而不会发生不良情况,因此请记住这一点.
标签:graphics2d,oop,graphics,implementation,java 来源: https://codeday.me/bug/20191102/1991248.html