объект для класса, как enum для ...? - PullRequest
5 голосов
/ 06 февраля 2009

объект относится к классу, как enum к ...?



Я использую C #, но я бы хотел получить ответ и для Java, если он есть.

Спасибо, как всегда.

Ответы [ 5 ]

13 голосов
/ 06 февраля 2009

Неважно, обсуждаем ли мы C # или Java, предложение не может быть завершено так, как вы ожидаете, из-за следующего фундаментального недостатка: enum и class types тогда как объект является конкретным экземпляром типа.

В C # перечисление - это тип значения, который ограничивает базовый числовой тип путем определения допустимых значений и (необязательно) комбинаций этих значений для базового типа. Учитывая следующий пример:

enum Days { Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday };

мы говорим, что Дней - это enum , тогда как Понедельник - это одно из значений .

В Java перечисление - это класс , определенный с использованием специального синтаксиса, который определяет уникальные, выдающиеся, общедоступные экземпляры этого класса. Перечисление является окончательным, то есть не может быть расширено.

5 голосов
/ 06 февраля 2009

"Enum is to Value Type"

Перечисления являются строго типизированными константами

В традиции C # они строго типизированы, что означает, что перечисление одного типа не может быть неявно присвоено перечислению другого типа, даже если базовые значения их членов одинаковы.

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

Перечисления используются и обозначаются как Enum как строчные, так и прописные. Связь между ними заключается в том, что тип C #, enum, наследует тип Enum из библиотеки базовых классов (BCL). Используйте тип C # enum для определения новых перечислений и используйте тип BCL Enum для реализации статических методов перечисления.

Источник: http://www.csharp -station.com / Учебники / Lesson17.aspx

3 голосов
/ 06 февраля 2009

В Java Enum теперь является типом класса, поэтому вы можете иметь объект enum.

2 голосов
/ 06 февраля 2009

Объект относится к классу, как и перечисление.

0 голосов
/ 07 февраля 2009

Объект является экземпляром класса. enum является примером ключевого слова.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...