177
ыват
т б
ва сть
а также ектам
м
c).
ках могу
н
в о
рж без
ивае
я
(abstr
такж
tra
зап
а
жащего их класс как
sealed.
В обоих языках можно использовать операции, о в
C# используются стандартные механизмы .NET —
поддерживаемых .NET, с учетом ограничений на о
доступен из любого другого кода на поддерживаем
В Java для этого предусмотрен механизм Java N
иметь ряд
внешних методов, помеченных модифик
сразу после описания полной сигнатуры идет точк
реализуются в виде функций на языке C (или на др
получить библиотеку с интерфейсом етоды, а также свойства,
дексированные свойства, события и операторы, определенным
правилам к
терфейс на C и не вл # — там такие
ern.
типов,
аторы. Их описание
я
в, полей,
оженных типов, могут быть
дексированными
и, событиями или операторами.
го, в типе можно определить
жать в
х. Остальные из перечисленных
только к тому классу, в
видносте
гичные идиомы в компонентной модели JavaBeans [8,9], предназначенной для построения
ементов пользовательского интерфейса и широк ользуемой в рамках
Java технологий для
о нове
ан кода на
огич s.
оформлять в виде
поля означает, что
тся единожды
ыми далее
или
В обоих языках поля можно только перекр ь в наследниках, а методы м жно и о
перегружать. Вложенные типы, как и поля, могу
сса могут присутство
ыть перекрыты.
еляющие доступно
У каждого элемента кла ть модификаторы, опред
этого элемента из разных мест программы, его контекст — относится ли он к объ
этого класса (нестатический элемент
) или к само
у классу (статический элемент, помечается как
stati
Для указания доступности в обоих язы
protected и private, указывающие, соответстве
доступен содержащий его тип, доступен только
типа, или только в рамках описания самого соде
т использоваться модификаторы
public,
но, что данный элемент доступен везде, где
писаниях типов-наследников содержащего
ащего типа. Доступность по умолчанию,
мых языках различно.
свойства, индексированные свойства и событи
act), т.е. не задающими реализации
е свойства, индексированные свойства и
указания модификатора трактуется в рассматр
Нестатические методы в обоих языках (а также
в C#) могут быть объявлены абстрактными
соответствующей операции. Такие методы (а
события в C#) помечаются модификатором
abs
после описания полной сигнатуры идет точка с
Методы (свойства, индексированные свойств
перегружены в наследниках содер
ct. Вместо кода у абстрактного метода сразу
ятой.
и события в C#), которые не должны быть
а, помечаются в Java как
final, а в C#
реализованные на других языках. Для этог
класс реализуется на одном из языков,
бщие библиотеки этой среды и становится
ом .NET языке.
ative Interface, JNI [6,7]. Класс Java может
атором
native. Вместо кода у таких методов
а с запятой. Они по определенным правилам
угом языке, если можно в результате
на C). Внешние м
компиляции
ин привязываемые по
функциям, которые имеют ин
ерации помечаются как
ext
ожены в среду .NET, есть и в C
оп
В Java, помимо пер
меются инициализ
ечисленных членов
и
приведено ниже.
Инициализаторы относятся только к тому
льз
классу, в котором они определены, их не
перегрузить.
В C# члены типов,
нструкторов и вл
помимо методо
ко
константами, свойствами, ин
свойствам
это
Кроме
деструктор
и статический конструктор.
Нестат и ства, индексированные ическ е свой
а и события можно перегру
свойств
наследника
ов относятся
элемент
котором описаны.
Для многих из дополнительных разно й членов типов, имеющихся в C#, есть
анало
эл о исп
создания компонентов, структуру которых можн
лагаемых JavaBeans соглашений об именов
анализировать динамически на ос
тодов. Далее вместе с примерами
пред ии ме
C# в правом столбце в левом приводится анал ный код, написанный в соответствии JavaBean
Константы в Java принято
полей с модификаторами
final static.
Модификатор
final для
Константы являю
вычисляемыми и неизменн
значениями, хранящимися в классе