如果我有以下方法:
public static void flipHorizontal(Picture v){
int w = v.getWidth();
int h = v.getHeight();
int width = w;
for(int y = 0; y < h; y++){
for(int x = 0; x < w/2; x++){
Pixel pixelobj = v.getPixel(x, y);
Pixel bottomPixel = v.getPixel(width - 1 - x, y);
bottomPixel.setColor(pixelobj.getColor());
}
}
}
如何将其创建为实例方法?我知道它与去除静电有关,但我从哪里去?
答案 0 :(得分:4)
删除static
关键字后,您需要更改方法的调用方式。
e.g。如果你的班级被称为MyClass,而你之前在做过
MyClass.flipHorizontal(myPicture);
...然后你需要从封闭类的实例中调用你的方法。 e.g。
MyClass blah = new MyClass();
blah.flipHorizontal(myPicture);
根据封闭类(或其实例变量之一)是否为Picture
,删除flipHorizontal
的输入参数可能是有意义的(因为它可以访问这些已经不再是静态方法的对象了)
答案 1 :(得分:0)
我认为您不需要获取静态方法的实例,您可以将静态方法与className.staticMethod一起使用。 utilsClass中有很多静态方法,所以你只需要className来使用该方法,使用实例会更加舒适。 如果你不想使用className,我想你只想把方法变成普通方法,只需删除方法中的static关键字即可。 谢谢