本文介绍了在 Java 中继承静态变量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想要以下设置:

abstract class Parent {
    public static String ACONSTANT; // I'd use abstract here if it was allowed

    // Other stuff follows
}

class Child extends Parent {
    public static String ACONSTANT = "some value";

    // etc
}

这在java中可能吗?如何?如果可以避免的话,我宁愿不使用实例变量/方法.

Is this possible in java? How? I'd rather not use instance variables/methods if I can avoid it.

谢谢!

常量是数据库表的名称.每个子对象都是一个迷你 ORM.

The constant is the name of a database table. Each child object is a mini ORM.

推荐答案

你不能完全按照你的意愿去做.也许可以接受的妥协是:

you can't do it exactly as you want. Perhaps an acceptable compromise would be:

abstract class Parent {
    public abstract String getACONSTANT();
}

class Child extends Parent {
    public static final String ACONSTANT = "some value";
    public String getACONSTANT() { return ACONSTANT; }
}

这篇关于在 Java 中继承静态变量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

05-18 21:04