2013-07-05 7 views
32

Что такое эквивалентное ключевое слово C# для ключевого слова super (java).Эквивалент супер ключевого слова в C#

Мой код Java:

public class PrintImageLocations extends PDFStreamEngine 
{ 
    public PrintImageLocations() throws IOException 
    { 
     super(ResourceLoader.loadProperties("org/apache/pdfbox/resources/PDFTextStripper.properties", true)); 
    } 

    protected void processOperator(PDFOperator operator, List arguments) throws IOException 
    { 
    super.processOperator(operator, arguments); 
    } 

Теперь, что именно мне нужно эквивалент супер ключевое слово в C# изначально опробованы base я ли способ использовали ключевое слово базы в правильном направлении

class Imagedata : PDFStreamEngine 
{ 
    public Imagedata() : base() 
    {           
     ResourceLoader.loadProperties("org/apache/pdfbox/resources/PDFTextStripper.properties", true); 
    } 

    protected override void processOperator(PDFOperator operations, List arguments) 
    { 
     base.processOperator(operations, arguments); 
    } 
} 

Может кто-нибудь мне помочь.

+1

Вы должны быть более конкретными. Каков результат, который вы получаете и чего ожидаете? Кроме того, почему вы используете классы Java в C#? – millimoose

+3

Это говорит, что я предполагаю, что вам нужна 'public Imagedata(): base (ResourceLoader.loadProperties (...))'. – millimoose

+0

* «Теперь мне нужно преобразовать в C# на самом деле я пытался с базой, но я не мог найти ожидаемый результат, полученный из java» *, что вы ожидали? –

ответ

40

C# эквивалент вашего кода

class Imagedata : PDFStreamEngine 
    { 
    // C# uses "base" keyword whenever Java uses "super" 
    // so instead of super(...) in Java we should call its C# equivalent (base): 
    public Imagedata() 
     : base(ResourceLoader.loadProperties("org/apache/pdfbox/resources/PDFTextStripper.properties", true)) 
    { } 

    // Java methods are virtual by default, when C# methods aren't. 
    // So we should be sure that processOperator method in base class 
    // (that is PDFStreamEngine) 
    // declared as "virtual" 
    protected override void processOperator(PDFOperator operations, List arguments) 
    { 
     base.processOperator(operations, arguments); 
    } 
    } 
Смежные вопросы