快速是,否,或者这并不重要:

我覆盖了抽象按钮的paint方法,并且想知道是否在做

GradientPaint gp = new GradientPaint(0, 0, color1, 0, h, color2);
RoundRectangle2D r = new RoundRectangle2D.Float(0, 0, w, h, w/5, h/5);


而类似的方法将会影响性能

GradientPaint gp;
RoundRectangle2D r;


外漆然后

gp = new GradientPaint(0, 0, color1, 0, h, color2);
r = new RoundRectangle2D.Float(0, 0, w, h, w/5, h/5);


内画法

最佳答案

寻求最可维护的解决方案,直到您测量问题为止:-)

每个“优化”都需要其他逻辑(又称LOC)。每增加一条线,维护成本就很难预测。我的一般规则是,它不会增加无法计算的成本。

顺便说一句:仍然不能做第一个选择,渐变是不可变的-因此,每次更改大小后都必须重新创建。

关于java - Java-自定义绘画声明性能,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8351464/

10-09 16:46
查看更多