Java-在抽象类中使用常量,也需要由子类使用

spa*_*paz 6 java final constants abstract

我有一个抽象类和2个子类.有4个与所有类相关的常量.我打算将决赛放在抽象类中,但我理解最后一个变量不是继承的?我是否必须在每个类中定义常量(似乎效率低下)?或者只是将常量变为即时变量(听起来不是一个好主意)?

我有什么方法可以解决这个问题?

Mar*_*tin 10

如果在抽象类中定义,则以下内容可用于所有子类.

public static final Integer MYCONSTANT = 42;
Run Code Online (Sandbox Code Playgroud)

要么

static final Integer MYCONSTANT = 42;
Run Code Online (Sandbox Code Playgroud)

要么

protected static final Integer MYCONSTANT = 42;
Run Code Online (Sandbox Code Playgroud)

第二个(package-private)仅适用于同一个包中的类.第三个(受保护的)将适用于所有子类,无论其包装如何.