2009-02-04 6 views
20

В Java, если вы должны были иметь заявление:C# эквивалент ключевого слова Java 'tools'?

public class MyClass implements LargerClass { 

ли вы быть расширяющий LargerClass с более методами?

Что было бы эквивалентом этого определения класса в C#?

Я спрашиваю, потому что я не очень хорошо знаком с Java и в настоящее время конвертирую код Java в код C#, и этот вопрос дает мне некоторые проблемы.

Заранее спасибо.

ответ

63
public class MyClass implements LargerClass 

В Java, это говорит, что MyClass реализует interfaceLargerClass; то есть излагает реализации для поведения, определенного в LargerClass.

К inherit из другого класса в Java, используйте extends, например.

public class MyClass extends LargerClass 

C# эквивалент, в обоих случаях определяется как

public class MyClass : LargerClass 

Поскольку этот синтаксис не делает его ясно, будет ли или нет LargerClass представляет собой интерфейс или другой класс наследуется, вы будете find C# /. NET разработчики принимают соглашение о том, что имена интерфейсов имеют префикс «I» в верхнем регистре, например IEnumerable.

+2

Мне нравится этот ответ лучше, потому что он упоминает стандартное соглашение, которое вы можете использовать для разграничения интерфейсов и классов. –

+1

В java это соглашение обычно используется. – Ragnagord

Смежные вопросы