Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
1 / 1 / 2
Регистрация: 18.05.2011
Сообщений: 68

Правильное размещение констант

04.04.2017, 09:49. Показов 1181. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Перед тем как создавать тему, погуглил, но нигде ответа не нашел.
Вопрос такой: Есть набор констант, которые могут использоваться в нескольких классах. Где их разместить?
Есть несколько вариантов:
1)(нашел в гугле) размещать константы в интерфейсе, но идеологически данный подход неверен.
2)(отсебятина) Разместить константы в отдельном классе, например:
Java
1
2
3
4
5
6
7
public class SomeConstants{
 
public static final String CONST_1 = "блинчики!";
public static final String CONST_2 = "готовить";
public static final String CONST_3 = "Лень";
 
}
соответственно вызов в нужном классе:
Java
1
2
3
4
5
6
7
public class SomeClass{
 
private void printSomeString(){
   System.out.println(SomeConstants.CONST_3 + SomeConstants.CONST_2 + SomeConstants.CONST_1);
}
 
}
Есть ли более правильный подход для размещения констант, дабы не дублировать их в каждом классе, который их использует?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.04.2017, 09:49
Ответы с готовыми решениями:

Размещение констант(теорет.)
По вашему мнению, где лучше размещать константы 1) Все константы в одном файла(массив или класс не имеет значения) 2) Необходимые...

Размещение констант в классе
Добрый день. Есть код: class a { const int const1 = 100; const int const2 = 100;

Размещение констант во flash-памяти AVR?
Уважаемые коллеги! Осваиваю графический экранчик, написал для него в отдельном .h шрифт в виде: #include <avr/pgmsposi.h> ...

3
 Аватар для HighPredator
6045 / 2160 / 753
Регистрация: 10.12.2010
Сообщений: 6,005
Записей в блоге: 3
04.04.2017, 10:44
Класс чисто для констант -- вполне подходящее решение.
1
1 / 1 / 2
Регистрация: 18.05.2011
Сообщений: 68
04.04.2017, 10:59  [ТС]
Спасибо за ответ, значит я на верном пути
0
Эксперт функциональных языков программированияЭксперт Java
 Аватар для korvin_
4575 / 2774 / 491
Регистрация: 28.04.2012
Сообщений: 8,765
04.04.2017, 11:01
Цитата Сообщение от Frizka Посмотреть сообщение
Есть ли более правильный подход для размещения констант, дабы не дублировать их в каждом классе, который их использует?
Нет. Но в некоторых случаях можно использовать enum:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public enum SomeConstants {
 
    CONST_1("блинчики!"),
    CONST_2("готовить"),
    CONST_3("Лень");
    
    private final String message;
 
    private SomeConstants(String message) {
        this.message = message;
    }
    
    public String message() {
        return message;
    }
}
Java
1
2
3
4
5
6
7
8
9
public final class SomeClass {
 
    private void printSomeString(){
        System.out.println(SomeConstants.CONST_3.message()
                + SomeConstants.CONST_2.message()
                + SomeConstants.CONST_1.message()
        );
    }
}
Но там есть свои нюансы, поэтому, если ты не знаешь, что делаешь, просто используй статические поля класса, как в твоём примере.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.04.2017, 11:01
Помогаю со студенческими работами здесь

Не правильное размещение
Доброго времени суток,сделал слайдер На сайте отображается не корректно Левое меню уехало вниз,исправить не могу на пк работает без...

Не правильное размещение в QBoxLayout
Пишу на VS 2010 используя Qt и есть следующий код: mainwindow.h #ifndef MAINWINDOW_H #define MAINWINDOW_H class MainWindow...

Правильное размещение контента сайта
Хочу разместить материалы сайта так как размещено здесь Скажите каким размером создавать шапку сайта и делать правое и левое...

Правильное размещение контента в материале
Подскажите как правильно разместить материал. Я использую DIV контейнер, но материал не отображается в полый размер. При использовании тега...

Правильное размещение своего копирайта в скрипте
Допустим мы написали нашу пхп-программу :). Сверху мы разместили наш логитпчик, доупстим как в форумах phpBB, или не логотипчик, а хотя...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru