我需要在两个类中使用一个方法.哪种方法是一种好的做法?使方法公开vs使其静态与制作副本

aru*_*un8 0 java oop

我有两个适配器类在同一个包中,我需要以下方法..

private int getAlphaValue(int backgroundTransparency) {
    int backgroundOpaquePercentage = 100 - backgroundTransparency;
    int alpha= (255 * backgroundOpaquePercentage) / 100;
    return alpha;
}
Run Code Online (Sandbox Code Playgroud)
  1. 在每个类中都有这个方法的副本,并将它们设为私有.
  2. 在其中一种方法中有方法使其静态保护可以在两种方法中使用

以上两种方法中的哪一种是良好的做法和有效的方法?

Rav*_*yal 6

创建一个新GraphicsUtil类并添加这样的实用方法static.这样的util方法不属于任何一个类,并且通过静态/全局上下文使得对应用程序全局可用更有意义.

然后所有其他图形类将其用作

int alpha = GraphicsUtil.getAlphaValue(50);
Run Code Online (Sandbox Code Playgroud)