Master-X
Форум | Новости | Статьи
Главная » Форум » Программинг, Скрипты, Софт, Сервисы » 
Тема: ООП глобальные константы? (C# или Java)
цитата
19/08/12 в 21:50
 Vyacheslav
Только начинаю осваивать не процедурное программирование.
Ситуация такая: Хочу попробовать написать простенькую игрушку. Нужно как-то иннициализировать константы глобального плана, например, размер игрового поля, цвет бекграунда, размер минимальной точки (графика в виде кубиков) и т.д. Потом попросту, чтоб можно было менять настройки или подгонять поле под размер формы динамически...
Как средствами ООП грамотно это делается?

Оффтопик: Понятно, что можно, как в большинстве рефератов или курсовых работ, запихнуть все в один класс и нахерачить в нём в стиле процедурного программирования используя статические методы. Но вопрос именно в познании теории обьектного программирования.
На ум приходит только, что это должен быть какой-то обьект с предустановлеными полями. Но как реализовать класс с "паблик статик полями" на C# хз.
цитата
19/08/12 в 22:13
 Yacc
http://msdn.microsoft.com/library/0zszyc6e(en-us,vs.80).aspx
цитата
19/08/12 в 22:35
 Vyacheslav
Ну это скорее временное хранилище пользовательских данных и относится именно к специфике Framework-а.
Мне нужно именно понять как в пределах ООП парадигмы инициализировать константы в программе. Например, если ту же задачу реализовывать на Java эти Application Settings уже не прокатят.
цитата
19/08/12 в 23:19
 Yacc
Vyacheslav писал:
как в пределах ООП парадигмы инициализировать константы в программе.

Если конструктор один, то непосредственно:

Код:
public class foo {
  public readonly int width = 100;
...
}


Если конструкторов несколько или важен порядок инициализации полей, то в конструкторе, причём желательно в одном:

Код:
public class foo {
  public readonly int width;

  public foo():this(100){}

  public foo(int width) {
    this.width = width;
  }
...
}


Эта страница в полной версии