DEV Community

Mustafa  Çam
Mustafa Çam

Posted on

java casting

Java'da Casting (Dönüştürme) Nedir?

Java'da casting, bir veri tipini doğal olarak uyumlu olduğu başka bir veri tipine dönüştürme işlemidir. Bu işlem, veri türleri arasında geçiş yapmamızı sağlar. İki temel türü vardır:

  1. Genişleyen Tipe Dönüşüm (Upcasting):

    • Alt sınıftan oluşturulmuş bir nesneyi üst sınıftan oluşturulmuş bir nesneye çevirmeye denir.
    • Örneğin, bir alt sınıf olan Child sınıfından oluşturulan bir nesneyi, üst sınıf olan Parent sınıfına çevirebiliriz.
    • Bu işlem sırasında dikkat edilmesi gereken nokta, üst sınıfa dönüştürülen nesnenin kendi sınıfındaki özel metotlara erişememesidir. Sadece override edilmiş metotlara ve üst sınıfın metotlarına erişebilirler.
    • Örnek kod:
      class Parent {
          String name;
          void method() {
              System.out.println("Method from Parent");
          }
      }
    
      class Child extends Parent {
          int id;
          @Override
          void method() {
              System.out.println("Method from Child");
          }
      }
    
      public class Main {
          public static void main(String[] args) {
              Parent p = new Child();
              p.name = "GeeksforGeeks";
              System.out.println(p.name);
    
              Child c = (Child) p;
              c.id = 1;
              System.out.println(c.name);
              System.out.println(c.id);
              c.method();
          }
      }
    
  2. Daralan Tipe Dönüşüm (Downcasting):

    • Üst sınıftan oluşturulmuş bir nesneyi alt sınıftan oluşturulmuş bir nesneye çevirme işlemidir.
    • İstenilen nesnenin sadece istenilen metotlarına erişmesini sağlamak için kullanılır.
    • Bu dönüşüm için aralarında inheritance ilişkisi olan sınıflar gereklidir.
    • Örnek kod:
      double doubleSayi = 10.5;
      int intSayi = (int) doubleSayi;
      System.out.println("double tipinde değer: " + doubleSayi);
      System.out.println("int tipinde değer: " + intSayi);
    
- Bu örnekte, double tipinden int tipine dönüşüm yaparken ondalık kısım çıkartılmıştır. Daha geniş türden daha dar türe dönüştürülürken kayıp yaşanması olasıdır.
Enter fullscreen mode Exit fullscreen mode

Java'da casting, veri türleri arasında geçiş yaparken önemli bir araçtır. Özellikle inheritance ilişkisi olan sınıflar arasında bu işlemi kullanabilirsiniz.

Kaynak: Bing ile konuşma, 17.05.2024
(1) Java’da Casting İşlemleri. Merhabalar, | by İlker ... - Medium. https://medium.com/@yelekciogluilker/javada-casting-i̇şlemleri-70bfcf55d6eb.
(2) Java Tip Dönüşümü ( Java Type Casting) – Tasarım Kodlama. https://www.tasarimkodlama.com/java-programlama/java-tip-donusumu-java-type-casting/.
(3) Type casting, type conversion nedir? Ne farkı vardır?. https://bing.com/search?q=java+casting+nedir.
(4) Type casting, type conversion nedir? Ne farkı vardır?. https://hasscript.com/583/type-casting-type-conversion-nedir-ne-fark%C4%B1-vard%C4%B1r.

Top comments (0)