« PIE | صفحه اصلی | Encapsulation »

Inheritance

May 28, 2007 02:35 PM

Inheritance به معني ارث بري ويژگي هاي يك class از class ديگر است.
در جاوا دو گونه inheritance وجود دارد :

1- Implementation inheritance (Class Inheritance)

اين، ارث بري از يك class است و با عبارت extends انجام مي شود. در اينجا مي توان همه يا برخي از ويژگي ها و متدهاي يك class را به ارث برد. هر class تنها مي تواند فقط يك superclass داشته باشد.
مثال:

public abstract class Account{
   Public void deposit(double amount){
    ……..
  }

   public void withdraw(double amount){
    ……..
   }
}

public class SavingsAccount extends Account{
   Public double calculateInterest(double amount){
    ……..
   }
}

2- Interface inheritance (Type Inheritance) يا SubTyping

اين، يك مكانيزم برقراري ارتباط است بين class هايي كه حتي با هم ارتباط ندارند. همچنين يك class مي تواند چندين interface را implement نمايد. كلا استفاده از اين روش بيشتر توصيه شده است.
مثال:

public interface Account{
   public abstract void deposit(double amount);
   public abstract void withdraw(double amount);
}

public interface SavingAccount extends Account {
   Public abstract double calculateInterest(double amount);
}

public class SavingAccountImpl implements SavingAccount{
   AccountHelper helper = new AccountHelper();

   public void deposit(double amount){
    ………
   }
   public void withdraw(double amount){
    ………
   }

}


همانطور كه مي بينيد در interface تعريف متغير وجود ندارد. همچنين بدنه و پياده سازي متدها، در interface قابل تعريف نيست. تنها declaration متدها در interface مي آيد.

mahyar_ev | 02:35 PM

 

نظرخواهی

نظر شما چيست؟










Remember personal info?




برای ثبت نظر کلمه submit را در کادر زیر وارد کنید.