c functions methods tutorial with code examples
Bu Öğretici, Basit Örneklerle C # Programlamadaki İşlevlerin Neler Olduğunu Açıklar. Ayrıca İşlevler ve Yöntemler Arasındaki Temel Farkları Öğreneceksiniz:
Önceki eğitimimizde Türleri ve Örnekleriyle birlikte C # 'daki Döngüler hakkında her şeyi araştırdık.
Bu eğiticide, kolay anlamanız için basit örneklerle C # 'daki İşlevlere odaklanacağız.
dijkstra algoritmasının java'da uygulanması
=> Herkes İçin ÜCRETSİZ C # Eğitim Dersleri
Ne öğreneceksin:
C # 'daki Fonksiyonlara Giriş
C # 'da bir işlev, belirli bir görevi gerçekleştirmek ve ardından bir değer döndürmek için kodu sarma tekniği olarak tanımlanır. C veya C ++ gibi önceki programlama dillerinden oldukça farklıdır. Burada işlevler tek başına mevcut değildir. Fonksiyonlar, OOP yaklaşımının bir parçasıdır.
İşlev, sınıfın bir üyesidir. Bir yöntemle tamamen aynıdır ve bazen her iki terim de birbirinin yerine kullanılır. Ancak yöntemler ve işlevler arasında birkaç temel fark vardır.
Yöntem ve İşlevler Arasındaki Fark
Her ikisi de birçok anlamda ve dilde benzer olsa da. Yöntemler ve İşlevler arasındaki temel fark, yöntemin dönüş türü olarak bir void ile birlikte gelmesi, işlevin bir dönüş türüne sahip olmasıdır.
Herhangi bir programlama dili seçmeden farklılıkları incelerseniz, İşlev, parantez içinde belirtilen işlemler için bir adı ve argümanları olan bir kod parçası olarak tanımlanabilir. Bir işlevin tüm argümanları doğası gereği açıktır.
Şimdi, diğer yandan yöntem, bir nesne olarak hareket eden bir işlev olarak görülebilir. Bir sınıf örneğinin bir taslağıdır. Yöntemin her zaman örtük argümanları vardır.
Bu eğitimde, kolaylık sağlamak için Yöntemler ve İşlevler terimlerini birbirinin yerine kullanacağız.
C # 'da Fonksiyonlar
Bir işlev, programcıların bir kod parçasını içine almasına ve ardından kodun bu bölümünü programın başka bir bölümünden çağırmasına olanak tanır. Aynı kodu farklı yerlerden çalıştırmanız gerektiğinde oldukça kullanışlıdır.
C # 'da, işlevler aşağıdaki sözdizimine sahiptir:
() { return; }
Önceki eğitimlerimizde tartıştığımız gibi, Access belirtir, Parametreler ve dönüş türleri isteğe bağlıdır. Farklı seçeneklerle işlevler oluşturalım.
Parametresi Olan Ancak Dönüş Türü Olmayan Fonksiyon
Hiçbir şey döndürmeden bazı parametreler sağlayarak bir işlev oluşturalım.
class Program { // function without any return type declaration public void square(int nmbr) { int sq = nmbr * nmbr; Console.WriteLine('Square of the given number is ' + sq); // Don’t provide any return statement } public static void Main(string() args) { Program pr = new Program(); // Creating a class Object pr.square( 2); //calling the method } } }
Yukarıdaki programda bir tamsayı parametresi yani 'nmbr' sağlayarak bir 'kare' fonksiyonu oluşturduk. Ardından parantez içinde, işleve herhangi bir dönüş türü sağlamadan kod parçacığını tanımladık. Sonunda, bir sınıf nesnesi oluşturduk ve argüman olarak bir tamsayı değeri ileterek 'kare' işlevini çağırdık.
Çıktı
Verilen sayının karesi 4
İşleri açıklığa kavuşturmak için başka bir örneğe bakalım.
Her İki Parametresine A Sahip İşlev And A Dönüş Tipi
Yukarıdaki örnekte bazı değişiklikler yapalım ve bir dönüş türü ekleyelim.
class Program { // function with integer return type declaration public int square(int nmbr) { int sq = nmbr * nmbr; // Lets provide a return statement return sq; } public static void Main(string() args) { Program pr = new Program(); // Creating a class Object int rslt = pr.square( 2); //Calling the method and assigning the value to an integer type Console.WriteLine('Square of the given number is '+ rslt); //Printing the result } } }
Yukarıdaki programda bir tamsayı parametresi, yani 'nmbr' ve dönüş tipi tamsayı sağlayarak bir 'kare' fonksiyonu oluşturduk. Sonra parantez içinde, kod parçacığını ve ardından bir dönüş ifadesini tanımladık.
java projesi nasıl başlatılır
Main işlevinin içinde, bir sınıf nesnesi oluşturduk ve argüman olarak bir tamsayı değeri ileterek 'kare' işlevini adlandırdık. İlişkili bir dönüş türü olduğundan, daha sonra işlevi bir tamsayı değişkeninde sakladık. Sonunda sonucu yazdırdık.
Çıktı
Verilen sayının karesi 4
C # Değere Göre Çağrı
C # programlama dilinde, bir fonksiyonu çağırdığımızda, sınıf nesnesini kullanarak ana fonksiyondan bir parametre alır. Daha sonra ana işlevin içindeki sınıf nesnesi, işlevi parametre değerlerine kopyalayacaktır. Değere göre çağrı kullandığımızda, yöntem içinde bazı değişiklikler olsa bile, bu değişiklik orijinal değişkene aktarılmayacaktır.
Misal:
class Program { public void square(int nmbr) { int nmbr = nmbr * nmbr; // Lets provide a return statement Console.WriteLine('Square of the given number is ' + nmbr); } public static void Main(string() args) { int nmbr = 2; // Value assigned before calling function Program pr = new Program(); // Creating a class Object pr.square( nmbr); //calling the method and assigning the defined integer Console.WriteLine('The given number is ' + nmbr); //printing the value } } }
Yani, yukarıdaki programı çalıştırırsak aşağıdaki çıktıyı bulacağız:
Verilen sayının karesi 4
Verilen sayı 2
Açıklama
Yukarıdaki örnekte, 2 değerinde bir tamsayı değişkeni 'nmbr' tanımladık. Sonra değişkeni argüman olarak geçirerek kare fonksiyonunu çağırdık. Dolayısıyla, geçtiğimiz değişken (fonksiyonun çalışması nedeniyle) kendi çarpımına dönüştü ve sonucu yazdırdı.
Sondaki ana fonksiyonda, daha önce tanımladığımız değişkeni yazdırıyoruz. Gördüğümüz gibi, fonksiyonun değişken değerinde (tanımlandığı yerde) bir değişiklik olmadı, ancak onu başka bir fonksiyon için bir argüman olarak ilettiğimizde değişti.
Daha önce değere göre çağırdığımızda tartıştığımız gibi, bir yöntemde değişkende meydana gelecek herhangi bir değişiklik orijinal değişkene aktarılmayacaktır. Dolayısıyla, değişken üzerinde yazdırma işlemini yaptığımızda, yine de bize önceden tanımlanmış çıktıyı veriyor.
Referansla C # Çağrı
C #, bir bağımsız değişkeni bir işlev için başvuru türü olarak iletmek için bir 'ref' anahtar sözcüğü sunar. Değere göre yapılan çağrıdan farklı olarak, değişkenin bir kopyasını oluşturduktan sonra değişkeni işleve geçirmez.
Orijinal değerin referansını işleve aktarır, dolayısıyla referans değerde meydana gelen herhangi bir değişiklik kalıcıdır ve orijinal değerde de yansıtılır.
Daha önceki ile aynı örneği kullanalım, ancak değere göre çağrı kullanmak yerine referansla çağrı kullanacağız:
oracle pl / sql mülakat soruları ve cevapları
class Program { public void square(int nmbr) { int nmbr = nmbr * nmbr; // Lets provide a return statement Console.WriteLine('Square of the given number is ' + nmbr); } public static void Main(string() args) { int nmbr = 2; // Value assigned before calling function Program pr = new Program(); // Creating a class Object pr.square( ref nmbr); //calling by reference using ref keyword Console.WriteLine('The given number is ' + nmbr); //printing the value } } }
Yani, programı çalıştırırsak aşağıdaki çıktıyı bulacağız:
Verilen sayının karesi 4
Verilen sayı 4
Açıklama
Yukarıdaki örnekte, 2 değerinde bir tamsayı değişkeni 'nmbr' tanımladık. Sonra değişkeni argüman olarak geçirerek kare fonksiyonunu çağırdık. Böylece, geçirdiğimiz değişken kendi çarpımına dönüştü (fonksiyon içindeki işlem nedeniyle) ve sonucu yazdırdı, yani 4.
Sondaki ana fonksiyonda, daha önce tanımladığımız değişkeni yazdırıyoruz. Görebildiğimiz gibi, referans verildiği ve üzerinde çalıştırıldığı fonksiyondaki değişken değerinde değişiklikler olduğunu görüyoruz. Fonksiyonun gerçekleştirdiği işlem ve değişken değeri 4 olarak değiştikçe aynısı konsol çıktısına da yansıtılır.
Daha önce referans olarak çağırdığımızda tartıştığımız gibi, bir yöntemde değişkene meydana gelecek herhangi bir değişiklik orijinal değişkene aktarılacaktır. Dolayısıyla, değişken üzerinde yazdırma işlemini gerçekleştirdiğimizde, mevcut çıktıyı yani 4'ü yazdıracaktır.
Sonuç
Bu eğitimde, C # programlamadaki fonksiyonlar hakkında bilgi edindik. Kodu sarma tekniğine işlev denir.
C ve C ++ gibi programlama dillerinde işlev, parantez içinde açıklanan işlemi gerçekleştirmek için bir ada ve argümanlara sahip bir kod parçacığı olarak tanımlanır.
Ayrıca fonksiyonlar ve yöntemler arasındaki temel farkı öğrendik ve parametrelerin ve dönüş türlerinin kullanımını açıklamak için birkaç örneğe baktık.
=> Derinlemesine C # Eğitim Öğreticilerine Buradan Göz Atın
Önerilen Kaynaklar
- Örneklerle Python DateTime Eğitimi
- Python Dizesi İşlevleri
- Uygulamalı Örneklerle Python Ana İşlev Eğitimi
- SVN Eğitimi: Subversion Kullanarak Kaynak Kodu Yönetimi
- Örneklerle C ++ 'da Tarih ve Saat İşlevleri
- Kaplumbağa SVN Eğitimi: Kod Deposundaki Revizyonlar
- AWS CodeBuild Eğitimi: Maven Build'tan Kod Çıkarma
- Örneklerle Unix Shell Komut Dosyası Oluşturma Eğitimi