Məzmuna keçin
  • Kateqoriyalar
  • Ən yeni
  • Teqlər
  • Populyar
Yığmaq
Brend loqosu
  1. Əsas səhifə
  2. Java
  3. Java-da İrsi̇li̇k (Inheritance)

Java-da İrsi̇li̇k (Inheritance)

Planlaşdırılıb Sabitlənib Kilidlənib Köçürülüb Java
oopinheritanceprinciples
2 Yazı 1 Yazarlar 41 Baxış
  • Ən köhnədən yeniyə
  • Ən yenidən köhnəyə
  • Ən çox səs
Cavab ver
  • Mövzu olaraq cavablandır
🔑 Daxil ol
Bu mövzu silindi. Yalnız mövzu idarəçiliyi imtiyazlarına malik olan istifadəçilər onu görə bilər.
  • codexC Oflayn
    codexC Oflayn
    codex
    üzərində yazmışdı sonuncu dəfə tərəfindən redaktə edilib
    #1

    İrsilik (ing. Inheritance) obyekt yönümlü proqramlaşdırmanın (OOP) əsas prinsiplərindən biridir. Bu prinsip, bir classın başqa bir classın xüsusiyyətlərini (metodlar və dəyişənlər) əldə etməsinə imkan verir. İrsilik, kodun təkrar istifadəsini təmin edir və proqramın strukturunu daha sadə və anlaşılan edir.

    Java-da irsiliyin əhəmiyyəti

    • Kodun yenidən istifadəsi: Bir dəfə yazılmış kodu digər classlarda təkrar istifadə etməyə imkan verir.
    • Genişlənəbilənlik: Mövcud classların funksionallığını genişləndirməyə şərait yaradır.
    • Metodun yenidən təyin edilməsi (Overriding): Alt classlarda üst classların metodlarını yenidən təyin etməyə imkan verir.
    • Abstraksiyanın əldə edilməsi: Abstraksiya prinsipi irsilik vasitəsilə həyata keçirilə bilər.

    Java-da irsiliyin tətbiqi

    Java-da irsiliyi tətbiq etmək üçün extends açar sözündən istifadə olunur. Bu, bir classın digər classın xüsusiyyətlərini miras almasını təmin edir.

    İrsiliyin sintaksisi

    class SuperClass {
       // Üst classın xüsusiyyətləri
    }
    
    class SubClass extends SuperClass {
       // Alt classın əlavə xüsusiyyətləri
    }
    

    Java-da irsilik nümunəsi

    Aşağıdakı nümunədə Calculation adlı üst class və My_Calculation adlı alt class yaradılmışdır. My_Calculation classı Calculation classdan addition() və subtraction() metodlarını miras alır və əlavə olaraq multiplication() metodunu təqdim edir.

    class Calculation {
       int z;
    
       public void addition(int x, int y) {
          z = x + y;
          System.out.println("Verilən ədədlərin cəmi: " + z);
       }
    
       public void subtraction(int x, int y) {
          z = x - y;
          System.out.println("Verilən ədədlərin fərqi: " + z);
       }
    }
    
    public class My_Calculation extends Calculation {
       public void multiplication(int x, int y) {
          z = x * y;
          System.out.println("Verilən ədədlərin hasilə: " + z);
       }
    
       public static void main(String args[]) {
          int a = 20, b = 10;
          My_Calculation demo = new My_Calculation();
          demo.addition(a, b);
          demo.subtraction(a, b);
          demo.multiplication(a, b);
       }
    }
    

    Java-da irsiliyin növləri

    Java-da əsasən üç növ irsilik mövcuddur:

    1. Tək irsilik (Single Inheritance): Bir alt class bir üst classdan miras alır.
    2. Çoxsəviyyəli irsilik (Multilevel Inheritance): Bir class başqa bir classdan miras alır və həmin classda başqa bir classdan miras alır.
    3. Hierarxik irsilik (Hierarchical Inheritance): Bir neçə alt class eyni üst classdan miras alır.

    Qeyd: Java çoxlu irsiliyi (Multiple Inheritance) classlar səviyyəsində dəstəkləmir. Bu, “diamond problem” adlanan qeyri-müəyyənlikdən qaçmaq üçün nəzərdə tutulmuşdur. Lakin, Java interfeyslər vasitəsilə çoxlu irsiliyi təmin edir.

    Nəticə

    Java-da irsilik, proqramın strukturunu daha səmərəli və təkrar istifadə edilə bilən hala gətirir. Bu prinsip, kodun saxlanmasını asanlaşdırır və proqramın genişləndirilməsini təmin edir. İrsiliyin düzgün tətbiqi, obyekt yönümlü proqramlaşdırmanın gücündən tam istifadə etməyə imkan verir.

    1 cavab Son cavab
    • codexC Oflayn
      codexC Oflayn
      codex
      yazdı sonuncu dəfə tərəfindən redaktə edilib
      #2

      💡 extends açar sözü

      Java-da bir class başqa bir class-dan miras alarkən extends açar sözündən istifadə edilir:

      class ChildClass extends ParentClass { ... }
      

      🔄 Metodun üstələnməsi (Overriding)

      Alt class, üst class-ın metodunu öz versiyası ilə dəyişə bilər:

      class Animal {
          void sound() {
              System.out.println("Some generic sound");
          }
      }
      
      class Cat extends Animal {
          @Override
          void sound() {
              System.out.println("Meow");
          }
      }
      

      🧱 İrsiliyin növləri Java-da

      1. Single Inheritance – yalnız bir class-dan miras alma
      2. Multilevel Inheritance – class-ın başqa bir class-dan miras alması və həmin class-ın da öz növbəsində miras alması
      3. Hierarchical Inheritance – bir neçə class-ın eyni class-dan miras alması

      Java multiple inheritance-i (çoxsaylı irsiliyi) class səviyyəsində dəstəkləmir, lakin interface-lər vasitəsilə bu mümkün olur.


      🔐 Access modifier-lərin təsiri

      Modifier Subclass daxilində görünür?
      public ✔️
      protected ✔️
      default ✔️ (eyni paketdədirsə)
      private ❌ Görünmür
      1 cavab Son cavab
      Cavab ver
      • Mövzu olaraq cavablandır
      🔑 Daxil ol
      • Ən köhnədən yeniyə
      • Ən yenidən köhnəyə
      • Ən çox səs




      Bilik paylaşdıqca artan bir sərvətdir
      • Daxil ol

      • Sizin hesabınız yoxdur? Qeydiyyatdan keç

      • Axtarış etmək üçün daxil olun və ya qeydiyyatdan keçin.
      • İlk yazı
        Son yazı
      0
      • Kateqoriyalar
      • Ən yeni
      • Teqlər
      • Populyar