using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace csharp
{
internal class Program
{
static void Main(string[] args)
{
int sayi1 = 15;
int sayi2 = 26;
int toplam = sayi1 + sayi2;
// bir alt satıra inme \n 'dir.
Console.WriteLine("Birinci Sayı :{0}\nİkinci Sayı :{1}\nİki sayının toplamı :{2}\n",sayi1,sayi2,toplam);
//MOD Alma : İki sayının bölümünden kalanı bulma
int sayi3 = 5;
int sayi4 = 2;
int kalan = sayi3 % sayi4;
Console.WriteLine("Sayılarrın bölümünden kalan : "+kalan);
// sayının karekökünü bulma:
// Karekök hesaplarken çıkacak sonucun int veya fload gibi değerlerini bilmediğimizden sonucu double olarak tanıttık.
// matematik işlemleri için math kütüphanesi, karekök için Sqrt kullanıldı.
double sayi5 = 5;
double sonuc = Math.Sqrt(sayi5);
Console.WriteLine("\nGirilen sayı:{0}\nGirilen sayının karekökü:{1}", sayi5, sonuc);
Console.ReadLine();
}
}
}
=========================================================================
static void nedir neden kullanılır?
ChatGPT:
static void terimi, genellikle C, C++, C# ve Java gibi programlama dillerinde karşımıza çıkar. İki anahtar kelimenin birleşiminden oluşur: static ve void. Bu ikisinin birlikte kullanımı bir fonksiyonun veya metodun belirli özelliklerini ifade eder.
static anahtar kelimesi:
- Fonksiyonlarda/metodlarda:
static anahtar kelimesi, bir fonksiyonun/metodun sınıf düzeyinde tanımlandığını ve sınıfın bir örneği (instance) olmadan çağrılabileceğini ifade eder. Yani, sınıfa ait tüm nesneler bu metoda doğrudan erişebilir. Sınıfın bir örneği oluşturulmadan çağrılabilen bir fonksiyondur. - Değişkenlerde:
static, bir değişkenin ömrü programın çalışma süresi boyunca devam ettiğini ve tüm örnekler için aynı değere sahip olduğunu belirtir. Bu değişken bir kez oluşturulur ve tüm sınıf örnekleri tarafından paylaşılır.
void anahtar kelimesi:
void, bir fonksiyonun/metodun dönüş tipi olmadığını (yani geriye bir değer döndürmediğini) belirtir. Fonksiyonun sonunda herhangi bir değer döndürmeyeceği anlamına gelir.
static void neden kullanılır?
- Bellek verimliliği:
static fonksiyonlar/metodlar nesneye bağlı olmadığından, her bir nesne için ayrı bir fonksiyon kopyası tutulmasına gerek kalmaz. Bu bellek tasarrufu sağlar. - Sınıfa bağlı fonksiyonlar: Eğer bir fonksiyonun yalnızca sınıfa ait bir işlevi varsa ve nesneye bağımlı olmadan çalışması gerekiyorsa, bu fonksiyonun
static olarak tanımlanması uygun olur. Örneğin, bir yardımcı (utility) fonksiyon ya da genel amaçlı bir işlem gerçekleştiren fonksiyonlar static olabilir. - Geriye değer döndürmeyen işlemler: Eğer bir işlem sonucunda sadece bir aksiyon alınacak ve herhangi bir veri döndürülmeyecekse,
void kullanmak uygundur.
Açıklama:
static void PrintSum(int a, int b): Bu metod, iki sayının toplamını ekrana yazdıran bir fonksiyondur. static olduğu için, sınıfın örneği oluşturulmadan doğrudan çağrılabilir. void ise bu metodun herhangi bir değer döndürmediğini belirtir.
Main metodu: Programın başlangıç noktasıdır. Burada PrintSum metodunu doğrudan sınıf adı belirtmeden çağırabiliyoruz çünkü PrintSum statik bir metod.
Bu kodda PrintSum(10, 20) çağrısı, 10 ve 20 değerlerini toplar ve ekrana "Toplam: 30" yazdırır. Metot void olduğu için sonuç döndürmez, sadece ekrana yazar.
Bu tür static metotlar genellikle yardımcı (utility) fonksiyonlar yazarken kullanılır.
Şunu dedin:
public static void nedir neden kullanılır
ChatGPT:
C# dilinde public static void, bir metodu tanımlarken kullanılan üç anahtar kelimenin birleşiminden oluşur ve bu metodun erişim seviyesi, örneğe bağlı olup olmadığı ve geri dönüş değeri hakkında bilgi verir.
public static void Nedir?
public:
- Erişim belirleyicisidir. Bir metodun veya değişkenin hangi sınıflardan ya da nesnelerden erişilebileceğini belirler.
public bir metot veya değişken, bulunduğu sınıfın dışından (diğer sınıflar veya programın başka bölümleri tarafından) doğrudan erişilebilir.
static:
- Metodun sınıfa ait olduğunu belirtir. Yani, bu metot, sınıfın bir örneği (nesnesi) oluşturulmadan kullanılabilir.
- Sınıfa bağlıdır, nesneye bağlı değildir. Başka bir deyişle, bu metot yalnızca sınıfın kendisiyle ilgilidir ve nesne durumlarıyla çalışmaz.
void:
- Metodun geri dönüş tipidir.
void, metodun bir sonuç döndürmediğini gösterir. Yani, bu metot bir işlem gerçekleştirir fakat sonuç olarak bir değer üretmez.
public static void Neden Kullanılır?
- Sınıf düzeyinde fonksiyonlar/metodlar: Eğer bir metodun sınıfın herhangi bir örneğine ihtiyaç duymadan, doğrudan sınıf üzerinden erişilmesi gerekiyorsa
static yapılması uygundur. Bu, genellikle sınıfa ait olan veya yardımcı işlevler sağlayan metotlarda kullanılır. - Her yerden erişim:
public erişim belirleyicisi, bu metodun projede herhangi bir yerden kullanılabilmesini sağlar. - Sonuç döndürmeyen işlemler: Eğer metodun sonucunda bir veri döndürülmeyecekse, sadece bir işlem yapıp bu işlem sonucunu döndürmeye ihtiyaç duyulmuyorsa
void kullanılır.
Örnek
Aşağıdaki örnekte, iki sayıyı toplayan ve sonucu ekrana yazdıran bir public static void metodu bulunuyor.
=================================================================
using System;
class MathUtils
{
// public: Her yerden erişilebilir
// static: Sınıfın örneği oluşturulmadan çağrılabilir
// void: Geriye bir değer döndürmez, sadece işlem yapar
public static void PrintSum(int a, int b)
{
int sum = a + b;
Console.WriteLine("Toplam: " + sum);
}
}
class Program
{
static void Main(string[] args)
{
// Sınıfın bir örneğini oluşturmadan doğrudan statik metodu çağırabiliyoruz
MathUtils.PrintSum(15, 25);
}
}
======================================================================
Önemli Noktalar:
- Erişim:
PrintSum metodunun public olması, bu metodun başka sınıflardan ya da programın diğer bölümlerinden rahatça çağrılabilmesini sağlar. Örneğin, MathUtils.PrintSum(15, 25) şeklinde başka bir sınıftan çağrılabilir. - Statik olma durumu:
static olması, bu metodun yalnızca MathUtils sınıfı üzerinden, yani sınıfın örneği olmadan kullanılabilmesini sağlar. MathUtils sınıfından bir nesne oluşturmadan PrintSum fonksiyonunu çağırabiliriz. - Değer döndürmemesi:
void olması metodun sadece bir işlem yaptığını (bu durumda ekrana yazdırma işlemi) ve geriye herhangi bir sonuç döndürmediğini ifade eder.
public static void metodlar genellikle yardımcı sınıflarda sıkça kullanılır çünkü genel işlemler için sınıfın örneğiyle değil, sınıfın kendisiyle çalışmak daha pratiktir.
Yorumlar
Yorum Gönder