Java | Bölüm 2 | Metodlar, Erişim Belirleyiciler & Döngüler

  • Konuyu Başlatan Konuyu Başlatan FatihE
  • Başlangıç tarihi Başlangıç tarihi
  • Görüntüleme 1.087
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

FatihE

Java Dev
Katılım
19 Ağustos 2019
Mesajlar
158
Elmaslar
115
Puan
1.290
Konum
Ankara
Minecraft
Fatih

Discord:

Fatih#1469

Java (3).png


Java | Metodlar & Erişim Belirleyiciler

Herkeze tekrardan merhaba, bildiğiniz üzere Java Dersimizin 1. bölümünde, değişken tiplerini & Eclipse programının kurulumunu & kullanımını görmüştük. Bu bölümde ise Metodlar & Bazı Terimler'i öğreneceğiz. Konumuza geçelim. İlk olarak Java'da ki metodlar ile başlıyalım.

1585734848257.png


Metodlar
Metodlar, kodlarımızı yazarken kodlarımızın daha düzenli ve kolaylaşmış şekilde olmasını sağlar. Yani mesela şu şekilde bir kod satırımız var;
Java:
String mesaj = "selam";
System.out.println(mesaj);
Bu kod satırı bir yerde kullandık, başka yerde de kullanacağız diyelim. Mesela bir classta daha kullanacağız. 2 yere de üstteki kodu yazarsak 4 satır boşuna gidecektir. Aslında metodun kullanım amacı bu sayıları yarıya indirmek için kullanılır. Metodların 2 tane başlığı vardır;
1. Return Metodları
2. Void Metodları


Return Metodu
Return metodları, genelde bir şeyi başka bir classtan alıp, değişkeni kontrol etmek veyahut bir şeyi hesaplayıp geri dönüş sağlamak için kullanılır. Örnek;
Java:
public static boolean sistem1;
public static boolean sistem2;

public static void main(String[] args) {
    sistem1 = true; // Bu şekilde booleanları true olarak ayarladık.
    sistem2 = true; //
   
    if (sistemlerAktifMi() == true) { // sistemler aktif mi fonksiyonunu çalıştırıp geri dönüş aldık ve eğer true olarak döndüyse
        System.out.println("Sistemler Aktiftir!");
    } else { // değilse, yani false döndürdüyse;
        System.out.println("Sistemler deaktiftir!");
    }

}
Not: Return metodunda, geri döndürülen veri'nin türünü metodun ilk satırında belirtmemiz lazım. Yani;
public static <değişken_türü> carp(<parametreler>...) {}

Java:
private boolean sistemlerAktifMi() {
    if (sistem1 == true && sistem2 == true) { // sistem 1 ve sistem 2 true ise;
        return true; // true yani aktif olarak geri döndürdük.
    } else { // biri yada 2side aktif değilse;
        System.out.println("Sistemler aktif değildir."); // aktif değildir mesajı konsola yazılsın.
        return false; // false yani deaktif olarak geri döndürdük.
    }

}
Bu şekilde geri döndürdük. Geçelim Void Metodlarına;



Void Metodu

Void metodları, kısa olarak bir şeyi yapıyor ve bitiriyor. Örnek olarak;
Java:
public static boolean sistem1;
public static boolean sistem2;

public static void main(String[] args) {

    sistemleriAktifEt(); // sistemleri bu şekilde aktif ettik. yani sistem1 ve sistem2'nin değeri true oldu.
    System.out.println("Sistemler aktif edildi!"); // konsole aktif edildi mesajını yazdırdık.


}

public static void sistemleriAktifEt() { // Sistemleri aktif etmek için bir metod oluşturduk;
    sistem1 = true; // sistem1'i true olarak ayarladık;
    sistem2 = true; // sistem2'yi true olarak ayarladık.


}

1585734857464.png


Metodlarda Parametreler
Parametreler ile Minecraft'tan örnek verirsem; metoda bir item veriyoruz. İstersek bu item'i başka item'e dönüştürebilip, return yardımıyla geri döndürebiliriz. Yani yaptığımız item'i geri döndürebiliriz. Hemen bi' örnek verelim;
Java:
public static void main(String[] args) {
    int carpim = carp(2, 4); // 2 ile 4'ü oluşturduğumuz metod yardımıyla çarptık.
    System.out.println(carpim); // çarpımı konsola yazdırdık, çıktı ise şu şekilde olacaktır; 8
}

public static int carp(int sayi1, int sayi2) {
    int sonuc = sayi1 * sayi2; // sayi1 ile sayi2'yi çarptık ve sonuc adlı integer'a yazdırdık bu veriyi.
    return sonuc; // sonuctaki değeri geri döndürdük.
}






1585734857464.png


Erişim Belirleyiciler
(public, static, protected...)


public: Eğer bir metoda veya değişkene bu belirteçi koyarsanız, tüm yerlerde kullanabilirsiniz yani Package içi, Package Dışı kullanıma her daim açıktır :).

private: Eğer bir metoda veya değişkene bu belirteçi koyarsanız, sadece aynı classta kullanabilirsiniz, yani sadece o class'ta kullanıma açıktır.

protected: Eğer bir metoda veya değişkene bu belirteçi koyarsanız, sınıf içerisinden, aynı sınıftan oluşturulmuş nesneden ve alt sınıflardan oluşturulmuş nesneden kullanıma açıktır.

default: Eğer bir metoda veya değişkene hiçbir belirteç koymazsanız, sınıf içerisinden kullanıma, nesneden kullanıma, paket içinden kullanıma açıktırlar.

Birde şööyle ek olarak bir tablo koyalım, lazım olur;
1585737378118.png



1585734866384.png


Döngüler
Ah, tabi birde döngüler var. Döngüler mesela bir işi 10 kere gerçekleştirmek istiyorsunuz, normal olarak 10 kere o kod satırını yazarsınız.
Ama ne gerek var!? Bu işi for döngüsü ile yapabilirsiniz.

Veyahut bir işi örnek olarak, boolean tipinde değişkenimiz aktif olunca işi gerçekleştirecek.
Tabiiki de bununda bir çözümü var; while döngüsü!
Her neyse, Artık konuya geçelim.


For Döngüsü
Üsttede açıkladığım gibi, bir kodu 10 kere yazmak yerine bu döngüyü kullanabiliriz. Ama nasıl?
Bu şekilde;

Java:
public static void main(String[] args) {
    for(int i = 0; i<10; i++) {
        mesajYaz("Java <3");
    }



}

public static void mesajYaz(String mesaj) {
    System.out.println(mesaj);
}

Kodu verdim ama anlatmadım. Hemen anlatayım, Döngüde ilk başlayacak değeri girdik ve bitiminde ; kullandık. ";" sonraki yere koşulu giriyoruz yani biz şu anlamda girdik; i değişkeni 10'dan küçük koşulu bozuluncaya kadar yani i değişkeni 10'dan büyük oluncaya kadar devam et dedik.
Ve bize çıktı olarak 11 kere Java <3 yazdırdı. Neden 11 kere yazdırdı diyecekseniz; 10'dan büyük oluncaya kadar yani 11 olması gerek.
Eğer "<" operatörünün yanına "=" operatörü de katsaydık 10 kere tekrarlayacaktı çünkü 10'a gelince i değişkeni 10'a eşitlenir ve döngü biter.

Bunuda anladığımıza göre diğer döngümüze geçelim.


While Döngüsü
While döngüsünü gerçek hayattan bir örnek verelim; ne zaman su şişesi yere düşerse; * olayını gerçekleştir şeklinde açıklayabiliriz. Her zaman yaptığım gibi bir kod vereyim ve ardından bunu açıklayayım.
Java:
public static boolean sistem;


public static void main(String[] args) {

    sistem = true;
    
    while(sistem == true) {
        System.out.println("Sistem Aktif");
    }


}

Şimdi burda biz, while döngüsünün içine, koşulumuzu yazdık. Anlamı ise ne zaman sistem aktif olursa konsola "Sistem Aktif" yazısını yaz anlamına gelmektedir. Bu değişken illa boolean olmasına gerek yok, boolean'ın yerine integer veya string yazıp while döngüsünde kontrol de edebiliriz.

Bunlardan başka döngülerde var lakin anlattıklarımdan başka şeyler içeriyor. Örnek Liste değişkenleri vs. Listeleri ve diğer döngüleri ilerideki bölümdeki anlatacağım için burada döngüleri ve konuyu kesmek zorundayım :).

1585734848257.png

Evet, bir konumuzun daha sonunda geldik. Her zamanki gibi bu konumla size birşey kazandırdıysam ne mutlu bana :).
Diğer bölüm yakında yayınlanacaktır. Görüşürüz!




 

İlk bölümün yanı sıra 2. bölüm daha geniş kapsamlı, öğretici ve hoş anlatımlı olmuş ki 3. bölümünü mutlaka bekliyor olacağım. Elinize sağlık ?
 
Öğretici ve anlamlı bir konu olmuş fatih bey. Başarılar <3
 
çok güzel bir konu olmuş emeğine sağlık
 
2. bölümün bu kadar kısa zamanda gelmesini beklemiyordum. Buna rağmen böyle güzel ve öğretici bir konu gerçekten çok başarılı.
Eline sağlık.​
 
Uzun Zamandır Java İle Kod Yazmıyordum Ve Birkaç Şeyi Unuttum, Bu Konu Sayesinde Unuttuklarımı Hatırladım Konunun Devamını Dört Gözle Bekliyorum
 
Son düzenleme:
İleri ki zamanlar da boş bir custom inventory nasıl oluşturulur spigot api sayesinde ulaşabileceğimiz eventler (bir iki örnek ile) örnek: inventoryclickevent, inventoryopenevent gibisinden daha yardımcı olabilirsin spigot'un kendi websitesinde bu tür dökümanlar mevcut başarılar.
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

Hala Discord sunucumuza katılmadın mı?

Büyük bir topluluğun parçası ol, etkinliklere katıl ve özel hediyeler kazanma şansı yakala!

Şimdi Katıl
Üst