myCSharp.de - DIE C# und .NET Community
Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 
 | Suche | FAQ

» Hauptmenü
myCSharp.de
» Startseite
» Forum
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Suche
» Regeln
» Wie poste ich richtig?
» Forum-FAQ

Mitglieder
» Liste / Suche
» Wer ist wo online?

Ressourcen
» openbook: Visual C#
» openbook: OO
» Microsoft Docs

Team
» Kontakt
» Übersicht
» Wir über uns

» myCSharp.de Diskussionsforum
Du befindest Dich hier: Community-Index » Diskussionsforum » Entwicklung » Grundlagen von C# » Kann es Methoden(aufrufe) innerhalb von Methoden geben?
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | Thema zu Favoriten hinzufügen

Antwort erstellen
Zum Ende der Seite springen  

Kann es Methoden(aufrufe) innerhalb von Methoden geben?

 
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
RafaelVogt RafaelVogt ist männlich
myCSharp.de-Mitglied

Dabei seit: 15.08.2019
Beiträge: 27


RafaelVogt ist offline

Kann es Methoden(aufrufe) innerhalb von Methoden geben?

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo an Alle,

anstatt mich weiter damit zu beschäftigen, Code-Stückchen aneinanderzureihen um meine Ziele zu erreichen, habe ich mich dazu entschlossen, C# von Grundauf neu zu lernen. Dazu benutze ich das Buch C# 8 mit Visual Studio 2019 und arbeite dieses Auch durch. Nun zu meiner Frage:

C#-Code:
namespace _02_Einführung_Variablen
{
    class Program
    {
        static void Main(string[] args)
        {
            int firstvalue;
            firstvalue = 1000;

            int secondvalue = 1000;

            int a = 1, b = 2;

            Console.WriteLine("firstvalue = {0}", firstvalue);
            Console.ReadKey();
        }
    }
}

Im Buch wird einerseits von Methoden und Anweisungen gesprochen und gesagt, dass Main hier die Methode ist, welcher 2 Schlüsselwörter vorangehen und dann wird bezüglich Console.WriteLine gesagt, dass dies auch eine Methode ist.

Kann es also Methoden innerhalb von Methoden geben, oder ist die Begrifflichkeit nicht ganz korrekt, oder verstehe ich hier was falsch?

MFG NewBee
01.09.2019 11:31 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
robbyrc robbyrc ist männlich
myCSharp.de-Mitglied

Dabei seit: 17.02.2006
Beiträge: 316
Entwicklungsumgebung: Visual Studio 2013 Prof.
Herkunft: Passau


robbyrc ist offline MSN-Passport-Profil von robbyrc anzeigen

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Servus,

Deine Main-Funktion sowie Console.WriteLine sind beides Methoden, das ist soweit korrekt. Ich würde es in deinem Fall jedoch so spezifizieren:

Deine "Main"-Methode ist eine Methodendeklaration, d.h. du definierst bzw. erstellst selbst eine Methode, die bestimmte Anweisungen ausführt

Das Console.WriteLine ist ein Methodenaufruf, d.h. du rufst eine bestehende Methode des .NET Frameworks, oder auch eine selbst von dir deklarierte Methode auf.


Mit diesen Begriffen gilt dann folgendes: Du kannst keine Methode innerhalb einer anderen Methode deklarieren (Ausnahme sind anonyme Methoden), allerdings kannst du beliebige Methoden aus einer anderen Methode aufrufen. Und dies sowohl mehrfach, als in Schleifen und auch verschiedenen Ebenen.

Hoffe das machts etwas klarer :)


Daniel

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von robbyrc am 01.09.2019 11:43.

01.09.2019 11:42 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
RafaelVogt RafaelVogt ist männlich
myCSharp.de-Mitglied

Dabei seit: 15.08.2019
Beiträge: 27

Themenstarter Thema begonnen von RafaelVogt

RafaelVogt ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Vielen herzlichen Dank. Jetzt ist das Chaos wieder geordnet (-:
01.09.2019 11:54 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
RafaelVogt RafaelVogt ist männlich
myCSharp.de-Mitglied

Dabei seit: 15.08.2019
Beiträge: 27

Themenstarter Thema begonnen von RafaelVogt

RafaelVogt ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

WriteLine ist dabei dann die Methode richtig? Sorry, ich will, dass es endlich richtig im Kopf ist.
01.09.2019 12:35 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Palladin007 Palladin007 ist männlich
myCSharp.de-Mitglied

Dabei seit: 03.02.2012
Beiträge: 1.200
Entwicklungsumgebung: Visual Studio 2017
Herkunft: NRW


Palladin007 ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Zitat:
WriteLine ist dabei dann die Methode richtig? Sorry, ich will, dass es endlich richtig im Kopf ist.

Genau. "WriteLine" ist die Methode und "Console" die Klasse, in der sie deklariert ist.
"Console.WriteLine("Hello World!")" ist der Methodenaufruf.



Ein kleiner Teil von robbyrcs Aussage stimmt nicht ganz:

Man kann Methoden in einer anderen Methode deklarieren, das geht ab C#7.0:
 https://docs.microsoft.com/de-de/dotnet/...local-functions

Ob das ein guter Stil ist, das muss jeder für sich entscheiden.

Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von Palladin007 am 01.09.2019 13:35.

01.09.2019 12:48 Beiträge des Benutzers | zu Buddylist hinzufügen
Baumstruktur | Brettstruktur       | Top 
myCSharp.de | Forum Der Startbeitrag ist älter als ein Monat.
Der letzte Beitrag ist älter als ein Monat.
Antwort erstellen


© Copyright 2003-2019 myCSharp.de-Team | Impressum | Datenschutz | Alle Rechte vorbehalten. | Dieses Portal verwendet zum korrekten Betrieb Cookies. 18.10.2019 09:10