وراثت جاوا (Subclass و Superclass)(Java Inheritance (Subclass and Superclass))


در جاوا امکان ارث بردن صفات و متدها از یک کلاس به کلاس دیگر وجود دارد. ما "مفهوم وراثت" را به دو دسته گروه بندی می کنیم:




  • زیر کلاس (فرزند) - کلاسی که از کلاس دیگری به ارث می رسد

  • superclass (والد) - کلاسی که از آن به ارث رسیده است


برای ارث بردن از یک کلاس، از extends استفاده کنید
کلمه کلیدی.


در مثال زیر، کلاس Car
(subclass) ویژگی ها و متدها را از کلاس Vehicle به ارث می برد.
(ابر کلاس):




مثال


class Vehicle {
  protected String brand = "Ford";        // Vehicle attribute
  public void honk() {                    // Vehicle method
    System.out.println("Tuut, tuut!");
  }
}

class Car extends Vehicle {
  private String modelName = "Mustang";    // Car attribute
  public static void main(String[] args) {

    // Create a myCar object
    Car myCar = new Car();

    // Call the honk() method (from the Vehicle class) on the myCar object
    myCar.honk();

    // Display the value of the brand attribute (from the Vehicle class) and the value of the modelName from the Car class
    System.out.println(myCar.brand + " " + myCar.modelName);
  }
}







آیا متوجه اصلاح‌کننده محافظت‌شده در خودرو شده‌اید؟


ما ویژگی brand را در خودرو روی یک محافظت شده دسترسی
اصلاح کننده
. اگر روی خصوصی تنظیم شده بود، کلاس خودرو قادر به دسترسی نخواهد بود.
آن.


چرا و چه زمانی از "ارث" استفاده کنیم؟


- برای قابلیت استفاده مجدد کد مفید است: هنگامی که یک کلاس جدید ایجاد می کنید، از ویژگی ها و روش های یک کلاس موجود استفاده مجدد کنید.


نکته: همچنین نگاهی به فصل بعدی، Polymorphism بیندازید، که از روش‌های ارثی برای انجام وظایف مختلف استفاده می‌کند.