Предложение Alexandru использования констант класса для перечислений работает вполне хорошо.
мне также нравится добавлять словарь для каждого набора констант к поиску человекочитаемое строковое представление.
Это служит двум целям: a) это обеспечивает простой путь к структурной распечатке программы Ваше перечисление и b) словарь логически группирует константы так, чтобы можно было протестировать на членство.
class Animal:
TYPE_DOG = 1
TYPE_CAT = 2
type2str = {
TYPE_DOG: "dog",
TYPE_CAT: "cat"
}
def __init__(self, type_):
assert type_ in self.type2str.keys()
self._type = type_
def __repr__(self):
return "<%s type=%s>" % (
self.__class__.__name__, self.type2str[self._type].upper())
Это то, что вам нужно:
Распространение: И JDK, и JRE могут свободно распространяться с добавлением стоимости (в соответствии с условиями BCL) .
Вот ссылка
Многие люди встраивают JDK в свои приложения, не платя никаких комиссий. Пользователя не беспокоят вопросы лицензирования, поскольку JDK / JRE уже извлечен, и любая другая зависимость также включена в пакет.
Я часто вижу этот вопрос, но Sun не дает на него ясного и простого ответа. «Если вы хотите встроить JVM в коммерческие приложения, вам придется заплатить определенную плату». По моему мнению, такое примечание должно отображаться на каждой странице загрузки.
Если вы не изменяете его и не взимаете за это деньги, вы можете связать двоичный установочный файл вместе с вашим приложением. Банок недостаточно.