Какая польза от констант интерфейса? - PullRequest
107 голосов
/ 17 апреля 2010

Я изучаю Java и только что обнаружил, что Интерфейс может иметь поля, которые являются статическими и окончательными. До сих пор я не видел таких примеров. Каковы некоторые из вариантов использования этих констант интерфейса, и можно ли их увидеть в стандартной библиотеке Java?

Ответы [ 11 ]

0 голосов
/ 20 января 2013

Я использую константы интерфейса при работе с общими константами между классами.

public interface TestConstants
{
    String RootLevelConstant1 = "RootLevelConstant1";

    interface SubGroup1
    {
        String SubGroupConstant1 = "SubGroup1Constant1";
        String SubGroupConstant2 = "SubGroup1Constant2";
    }

    interface SubGroup2
    {
        String SubGroupConstant1 = "SubGroup2Constant1";
        String SubGroupConstant2 = "SubGroup2Constant2";
    }
}

Группировка - это огромный актив, особенно с большим набором констант.

Чтобы использовать, вы просто объединяете их в цепочку:

System.out.println(TestConstants.SubGroup1.SubGroupConstant1);
System.out.println(TestConstants.SubGroup2.SubGroupConstant1);
System.out.println(TestConstants.RootLevelConstant1);
...