我有一个抽象类,有点像 Android 中的视图。我创建了很多类来扩展它来绘制不同的东西。现在我希望所有这些类共享相同的油漆,以便颜色匹配等等。
我的想法是
将一些上下文或窗口度量传递给每个构造函数,但这感觉很愚蠢,因为我只需要它一次。
我可以向抽象类添加一个静态方法 init(),但我尽量避免使用公共静态方法。
创建一个子类,其唯一目的是设置超类的静态成员并在最后使它们为空,就像对超类的静态内容的远程控制一样。
我只是不确定有什么风险,或者是否有更简单的方法来做到这一点。
编辑:要初始化静态成员,我需要一个上下文(对于那些不熟悉 android 的人)并且该上下文需要传递给该类,因此在静态块等中没有初始化