Java-da İrsi̇li̇k (Inheritance)
-
İ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
classdanaddition()
vəsubtraction()
metodlarını miras alır və əlavə olaraqmultiplication()
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:
- Tək irsilik (Single Inheritance): Bir alt class bir üst classdan miras alır.
- Ç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.
- 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.
Bilik paylaşdıqca artan bir sərvətdir